Ile dni po terminie?
Treść zadania
Biblioteka chce sprawdzić, które książki zostały zwrócone po terminie. Dla każdego takiego wypożyczenia wyświetl: numer wypożyczenia jako id, tytuł książki jako tytul, datę zwrotu jako data_zwrotu oraz liczbę dni spóźnienia jako dni_spoznienia.
Uwzględnij tylko wypożyczenia, które zostały już zwrócone (kolumna data_zwrotu nie jest pusta) i których zwrot nastąpił po terminie. Liczbę dni oblicz funkcją DATEDIFF od daty zwrotu do terminu. Posortuj wynik malejąco po liczbie dni, a przy równych wartościach rosnąco po numerze wypożyczenia.
Co będzie oceniane
- Wybrano numer wypożyczenia, tytuł, datę zwrotu i liczbę dni spóźnienia.
- Uwzględniono tylko wypożyczenia zwrócone po terminie.
- Liczba dni jest liczona funkcją DATEDIFF od terminu do daty zwrotu.
- Wynik jest posortowany malejąco po dniach i rosnąco po numerze wypożyczenia.
- Kod uruchamia się bez błędu i przechodzi wszystkie testy automatyczne.
Testy automatyczne (1)
- Zwroty po terminie z liczbą dni spóźnienia
Zaliczenie: wszystkie testy muszą przejść. Testy uruchamia się przyciskiem „Sprawdź testy” pod kodem.
-- Lista spóźnionych zwrotów
SELECT w.id, k.tytul, w.data_zwrotu,
... AS dni_spoznienia
FROM wypozyczenia w
JOIN ksiazki k ON ...
WHERE ...
ORDER BY ...;
Wskazówki
Wskazówka 1
Połącz tabele wypozyczenia i ksiazki po kolumnie ksiazka_id. Tytuł pochodzi z tabeli ksiazki, a daty z tabeli wypozyczenia.
Wskazówka 2
Warunek na brak zwrotu zapisz jako w.data_zwrotu IS NOT NULL. Drugi warunek to DATEDIFF(w.data_zwrotu, w.termin_zwrotu) > 0.