Tabela Pacjenci zawiera kolumny: imie, nazwisko, wiek oraz lekarz_id. Aby wyświetlić imiona i nazwiska pacjentów lekarza o id równym 6, uporządkowane alfabetycznie według nazwiska, należy użyć zapytania
A.
SELECT imie, nazwisko FROM Pacjenci ORDER BY nazwisko WHERE lekarz_id = 6;
B.
SELECT imie, nazwisko FROM Pacjenci WHERE lekarz_id = 6 ORDER BY nazwisko;
C.
SELECT imie, nazwisko FROM Pacjenci WHERE lekarz_id = 6 GROUP BY nazwisko;
D.
SELECT imie, nazwisko WHERE lekarz_id = 6 ORDER BY nazwisko;
Zapytanie SELECT imie, nazwisko FROM Pacjenci WHERE lekarz_id = 6 ORDER BY nazwisko; spełnia oba warunki z treści zadania. Część SELECT wskazuje kolumny, które mają zostać wyświetlone: imie oraz nazwisko. Część FROM Pacjenci określa tabelę źródłową. Warunek WHERE lekarz_id = 6 filtruje rekordy tak, aby zostały tylko pacjenci przypisani do lekarza o identyfikatorze 6. Na końcu ORDER BY nazwisko porządkuje wynik alfabetycznie według kolumny nazwisko, domyślnie rosnąco, czyli ASC. Do zapamiętania jest typowa kolejność klauzul: SELECT ... FROM ... WHERE ... ORDER BY ... . Takie zapytania stosuje się często w panelach rejestracji, wyszukiwarkach pacjentów i raportach filtrowanych według osoby prowadzącej.
W tym zadaniu łatwo pomylić filtrowanie z sortowaniem albo przestawić kolejność klauzul SQL. Zapytanie SELECT imie, nazwisko FROM Pacjenci ORDER BY nazwisko WHERE lekarz_id = 6; zawiera potrzebne elementy, ale w złej kolejności - WHERE musi wystąpić przed ORDER BY, ponieważ najpierw wybierane są rekordy spełniające warunek, a dopiero potem wynik jest sortowany. Zapytanie SELECT imie, nazwisko FROM Pacjenci WHERE lekarz_id = 6 GROUP BY nazwisko; używa GROUP BY, który służy do grupowania rekordów, zwykle razem z funkcjami agregującymi, takimi jak COUNT lub AVG. Nie zastępuje on sortowania alfabetycznego. Zapytanie SELECT imie, nazwisko WHERE lekarz_id = 6 ORDER BY nazwisko; nie wskazuje tabeli po FROM, więc baza nie ma określonego źródła danych. Poprawna postać to SELECT imie, nazwisko FROM Pacjenci WHERE lekarz_id = 6 ORDER BY nazwisko;. Typowy błąd polega na kojarzeniu ORDER BY tylko z miejscem przy nazwie kolumny, a nie z pełną składnią zapytania.