Kolokwium z baz danych: Wypożyczalnia rowerów (a.k.a. Złodzieje rowerów)

Autor: Krzysztof Stencel.

Data: 07 listopada 2025.

Struktura bazy danych: rowery.create, rowery.drop.

Przykładowe dane: rowery.insert.

Przykładowe rozwiązanie:

Zadanie

Baza zawiera dane miejskiej wypożyczalni rowerów: jej klientów, jej rowery, jej stacje i wypożyczenia.

Napisz następujące zapytania SQL:

  1. Wypisz imię, nazwisko klienta, numer seryjny roweru i datę każdego wypożyczenia.
  2. Wypisz listę wypożyczeń; dla każdego z nich podaj nazwę stacji początkowej i końcowej.
  3. Wypisz listę wszystkich rowerów; jeśli rower jest wypożyczony, podaj imię i nazwisko klienta, który ten rower pożyczył.
  4. Wypisz listę klientów wraz z liczbą wypożyczeń każdego klienta.
  5. Wypisz listę klientów, którzy zawsze wypożyczali rowery tylko z jednej stacji.
  6. Dla każdego typu roweru oblicz średni koszt wypożyczenia (uwzględnij tylko wypożyczenia zakończone).
  7. Pokaż wypożyczenia, których koszt jest wyższy niż średni koszt wszystkich wypożyczeń.
  8. Znajdź klientów, którzy mają więcej wypożyczeń niż średnia liczba wypożyczeń na klienta.
  9. Policz średni czas trwania wypożyczenia w minutach dla każdego typu roweru.
  10. Wypisz wszystkie rowery, które były przynajmniej raz wypożyczone przez Annę Nowak.
  11. Powiemy, że wypożyczenie B jest przesiadką z wypożyczenia A, gdy zachodzą łącznie następujące warunki: Znajdź wszystkie przesiadki, podając imię i nazwisko klienta, nazwę stacji, numer seryjny roweru oraz średnią arytmetyczną daty końcowej A i daty początkowej B.
  12. (***) Znajdź długość najdłuższego ciągu przesiadek.

Uwagi


Kolokwia (SQL)

Valid XHTML 1.0 Strict