W tabeli szkola (kolumny: imie, nazwisko, klasa) chcemy wyświetlić wszystkich uczniów klasy 3. Które polecenie jest poprawne?
A.
DELETE FROM szkola WHERE klasa = 3
Źle.
DELETE usunie tych uczniów zamiast ich wyświetlić.B.
SELECT * FROM szkola SET klasa = 3
Źle.
SELECT nie używa SET; warunek podaje WHERE.C.
SELECT * FROM szkola WHERE klasa = 3
Dobrze.
SELECT ... WHERE pobiera wiersze spełniające warunek.D.
UPDATE szkola SET klasa = 3
Źle.
UPDATE zmienia dane, a nie wyświetla.Do odczytu danych z warunkiem służy
SELECT z klauzulą WHERE. Aby wyświetlić uczniów klasy 3, zapisuje się SELECT * FROM szkola WHERE klasa = 3 - gwiazdka oznacza wszystkie kolumny, a warunek ogranicza wynik do klasy 3. Dlatego to zapytanie jest poprawne.Pozostałe zapytania nie wyświetlą uczniów klasy 3.
UPDATE szkola SET klasa = 3 zmieniłoby dane - wszystkim ustawiłoby klasę 3 - zamiast cokolwiek pokazać. SELECT * FROM szkola SET klasa = 3 miesza składnię: SELECT nie używa SET, a warunek zapisuje się po WHERE. DELETE FROM szkola WHERE klasa = 3 usunęłoby tych uczniów, co jest przeciwieństwem wyświetlenia. Pobranie wierszy klasy 3 daje SELECT * FROM szkola WHERE klasa = 3, dlatego to ono jest poprawne.