Wyszukiwanie z warunkami – WHERE

W tym odcinku opanujesz wszystkie wzorce filtrowania danych: operatory porównania, LIKE, BETWEEN, IS NULL, AND/OR, UPDATE oraz NOT IN z podzapytaniem. To najobszerniejszy zestaw wzorców egzaminacyjnych.


Zadanie 1: Operatory porównania (=, !=, <, >, <=, >=)

  • Cel: Filtrowanie po konkretnej wartości lub zakresie.

Zadanie 2: LIKE – wyszukiwanie wzorców w tekście

  • Cel: Kluczowe słowa w treści zadania: „zawiera słowo", „zaczyna się od", „w dowolnym miejscu".
Wzorzec LIKE Znaczenie
'%słowo%' słowo w dowolnym miejscu
'słowo%' zaczyna się od 'słowo'
'%słowo' kończy się na 'słowo'
'_a%' drugi znak to 'a' (podkreślnik = 1 znak)
'2024-03%' cały marzec 2024

Wskazówka: Data przez LIKE – wzorzec z egzaminów 2026: kolumna DATE może być filtrowana przez LIKE '2024-05-23%'.


Zadanie 3: BETWEEN – zakres wartości i dat

  • Cel: Stosujemy gdy zadanie podaje przedział liczb lub dat. Obie granice są włączone.

Wskazówka: BETWEEN mniejsza AND większa – zawsze najpierw mniejsza wartość. Odpowiednik: >= AND <=.


Zadanie 4: IS NULL i IS NOT NULL

  • Cel: Gdy zadanie mówi „niepuste" lub „bez autora". Nigdy nie piszemy = NULL – to nie zadziała!

Zadanie 5: AND i OR – łączenie warunków

  • Cel: AND – oba warunki muszą być spełnione. OR – wystarczy jeden.

Zadanie 6: UPDATE – aktualizacja rekordów

  • Cel: Modyfikacja istniejących rekordów. Najważniejszy wzorzec: zmiana wartości liczbowej przez obliczenie (np. podwyżka ceny o 10%).

Wzorzec:

Przykłady:

Wskazówka: UPDATE bez WHERE zmieni WSZYSTKIE rekordy w tabeli – zawsze dodawaj WHERE! Wzorzec: cena = cena * 1.10 to +10%, cena = cena * 0.90 to -10%.


Zadanie 7: NOT IN z podzapytaniem

  • Cel: Wzorzec „znajdź rekordy bez powiązania" – elegancka alternatywa dla LEFT JOIN z IS NULL.
Operator Znaczenie
WHERE id IN (SELECT ...) id musi być w wynikach podzapytania
WHERE id NOT IN (SELECT ...) id NIE może być w wynikach podzapytania

Wskazówka: Podzapytanie w nawiasach musi zwracać dokładnie jedną kolumnę.

materiały: link