Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Bazy danych

Słowa kluczowe: Algebra relacji DQL w SQL JOIN w SQL

W języku SQL klauzula GROUP BY służy do tego, aby

A. połączyć dane z dwóch tabel pozostających w relacji.
Źle. Tabele łączy JOIN z warunkiem ON.
B. zdefiniować klucz obcy dla tabeli.
Źle. Klucz obcy definiuje się przez FOREIGN KEY w strukturze tabeli.
C. pogrupować wiersze o tych samych wartościach wskazanej kolumny, na przykład aby obliczyć funkcję agregującą dla każdej grupy.
Dobrze. GROUP BY tworzy grupy, a funkcje agregujące liczą wynik dla każdej z nich.
D. posortować wiersze wyniku.
Źle. Sortowanie wykonuje ORDER BY.
Klauzula GROUP BY łączy w grupy wiersze, które mają tę samą wartość we wskazanej kolumnie. Najczęściej używa się jej razem z funkcjami agregującymi, takimi jak COUNT(), SUM(), AVG(), MIN() i MAX(), które liczą wynik osobno dla każdej grupy. Zapytanie SELECT klasa, COUNT(*) FROM uczniowie GROUP BY klasa; zwróci liczbę uczniów w każdej klasie. Do zapamiętania: WHERE filtruje wiersze przed grupowaniem, a HAVING filtruje gotowe grupy, na przykład HAVING COUNT(*) > 20. Kolumny w SELECT powinny być albo w GROUP BY, albo wewnątrz funkcji agregującej. Wynik zawiera jeden wiersz na każdą grupę.
Każdy z błędnych wariantów opisuje inną klauzulę lub polecenie SQL. Sortowanie wyniku to zadanie ORDER BY - porządkuje wiersze rosnąco (ASC) lub malejąco (DESC), ale niczego nie grupuje. Klucz obcy definiuje się w CREATE TABLE albo ALTER TABLE słowami FOREIGN KEY ... REFERENCES, czyli przy budowie struktury tabeli, a nie w zapytaniu wybierającym dane. Łączenie danych z tabel powiązanych relacją wykonuje JOIN z warunkiem ON. GROUP BY często pojawia się obok JOIN i ORDER BY w jednym zapytaniu, stąd pomyłki, ale jego rola to wyłącznie grupowanie wierszy o jednakowych wartościach. Kolejność tych klauzul w zapytaniu jest stała: SELECT, FROM, JOIN, WHERE, GROUP BY, HAVING, ORDER BY. Zapamiętanie tej kolejności ułatwia też odczytanie, co dane zapytanie robi. Dlatego klauzule te często występują razem w jednym zapytaniu.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.