WHERE służy do filtrowania rekordów zwracanych przez zapytanie SQL. Dzięki niej można wskazać warunek, który musi spełnić wiersz, aby znalazł się w wyniku.
Najczęściej używa się jej w zapytaniach SELECT, ale występuje też przy instrukcjach UPDATE i DELETE.
Składnia
SELECT kolumna
FROM tabela
WHERE warunek;
Przykład:
SELECT nazwa
FROM zwierzeta
WHERE dlugosc_zycia >= 20;
To zapytanie zwróci nazwy zwierząt, których długość życia jest większa lub równa 20.
Operatory porównania w WHERE
W warunkach można stosować m.in.:
=— równe,<>lub!=— różne,>— większe,<— mniejsze,>=— większe lub równe,<=— mniejsze lub równe.
Dla tekstu wartości zapisuje się zwykle w apostrofach:
WHERE gromada = 'ssak'
Łączenie warunków
Jeśli rekord ma spełniać kilka warunków jednocześnie, stosuje się operator AND:
SELECT nazwa
FROM zwierzeta
WHERE dlugosc_zycia >= 20 AND gromada = 'ssak';
To oznacza: zwróć tylko te zwierzęta, które żyją co najmniej 20 lat i są ssakami.
Typowy błąd egzaminacyjny
Operator OR oznacza „lub”, więc zwróci rekordy spełniające przynajmniej jeden z warunków. Jeśli w treści występuje słowo „oraz”, najczęściej potrzebny jest AND, a nie OR.