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: Programowanie webowe Bazy danych

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.

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.