Potwierdzone sprawdzone punkt po punkcie · 2026-11-04
Pomiń nawigację
Ćwiczenie · Informatyka Ćwiczenie: Raport kar według klas

Raport kar według klas

Treść zadania

Dyrektor prosi o raport kar bibliotecznych według klas. Dla każdej klasy wyświetl: nazwę klasy jako klasa, liczbę wypożyczeń jako wypozyczenia, sumę kar jako suma_kar oraz średnią karę zaokrągloną do dwóch miejsc jako srednia_kara.

Połącz tabele klasy, uczniowie i wypozyczenia. Grupuj po identyfikatorze i nazwie klasy. Uwzględnij wszystkie klasy, nawet jeśli suma kar wynosi zero. Posortuj wynik malejąco po sumie kar, a przy równych sumach rosnąco po nazwie klasy.

Co będzie oceniane

  • Raport zawiera nazwę klasy, liczbę wypożyczeń, sumę i średnią kar.
  • Połączono trzy tabele po właściwych kluczach.
  • Średnia kara jest zaokrąglona do dwóch miejsc po przecinku.
  • Wynik jest posortowany malejąco po sumie kar, a przy równych sumach rosnąco po nazwie klasy.
  • Kod uruchamia się bez błędu i przechodzi wszystkie testy automatyczne.

Testy automatyczne (1)

  1. Liczba wypożyczeń i kary w każdej klasie

Zaliczenie: wszystkie testy muszą przejść. Testy uruchamia się przyciskiem „Sprawdź testy” pod kodem.

-- Raport kar według klas
SELECT k.nazwa AS klasa,
       COUNT(w.id) AS wypozyczenia,
       ... AS suma_kar,
       ... AS srednia_kara
FROM klasy k
JOIN uczniowie u ON ...
JOIN wypozyczenia w ON ...
GROUP BY ...
ORDER BY ...;

Wskazówki

Wskazówka 1

Łańcuch połączeń to klasy k JOIN uczniowie u ON u.klasa_id = k.id, a następnie JOIN wypozyczenia w ON w.uczen_id = u.id.

Wskazówka 2

Użyj COUNT(w.id), SUM(w.kara) i ROUND(AVG(w.kara), 2). Sortowanie: ORDER BY suma_kar DESC, klasa.