Tabela ksiazki ma kolumny tytul, autor, cena (liczbowa). Która kwerenda zwróci TYLKO tytuły książek tańszych niż 50?
Dobrze. Wybiera kolumnę
tytul z warunkiem ceny.Źle.
* zwraca WSZYSTKIE kolumny, nie tylko tytuł.Źle. Zamienione tabela i kolumna; cena to liczba.
Źle. Błędny warunek (
> i tekst '50 zł').Skoro w wyniku mają być TYLKO tytuły, po
SELECT podajemy jedną kolumnę tytul, a nie *. Kolumna cena jest liczbą, więc porównujemy ją z liczbą bez cudzysłowów: SELECT tytul FROM ksiazki WHERE cena < 50; zwróci tytuły książek tańszych niż 50. Dlatego ta kwerenda jest poprawna.Pozostałe zapytania nie spełniają warunków.
SELECT * zwróciłby wszystkie kolumny, a nie same tytuły. Porównania z tekstem '50 zł' są błędne (cena jest liczbą), a > oznaczałoby książki DROŻSZE. SELECT ksiazki FROM tytul zamienia rolami tabelę i kolumnę. Poprawne jest SELECT tytul FROM ksiazki WHERE cena < 50;.