
Instrukcja WHERE w SQL to jeden z najczęściej używanych elementów zapytań. Pozwala ona filtrować dane zwracane przez zapytanie, co jest niezbędne, gdy operujemy na dużych zbiorach informacji. W dzisiejszym artykule pokażę, jak działa WHERE w języku SQL, podam przykłady jego zastosowania i omówię najważniejsze aspekty tej instrukcji.
Podstawowe użycie WHERE
Instrukcja WHERE służy do filtrowania wyników na podstawie określonych warunków. Jej podstawowa składnia wygląda tak:
SELECT kolumna1, kolumna2 FROM nazwa_tabeli WHERE warunek;
Przykładowe użycie:
SELECT * FROM klienci WHERE miasto = 'Warszawa';
Powyższe zapytanie zwróci wszystkich klientów, którzy pochodzą z Warszawy.
Operatory logiczne w WHERE
W instrukcji WHERE można używać różnych operatorów, które pozwalają na zaawansowane filtrowanie danych. Oto najważniejsze:
=– równość!=lub<>– nierówność<– mniejsze niż>– większe niż<=– mniejsze lub równe>=– większe lub równe
Przykłady zastosowania:
SELECT * FROM produkty WHERE cena > 100;
Powyższe zapytanie zwróci wszystkie produkty, których cena jest większa niż 100.
Łączenie warunków za pomocą AND i OR
Kiedy chcemy dodać więcej niż jeden warunek, możemy użyć operatorów AND i OR.
AND– oba warunki muszą być spełnioneOR– wystarczy, że jeden warunek będzie prawdziwy
Przykłady:
SELECT * FROM zamowienia WHERE status = 'Wysłane' AND kwota > 500;
Zapytanie zwróci tylko zamówienia, które mają status „Wysłane” i kwotę większą niż 500.
SELECT * FROM pracownicy WHERE stanowisko = 'Programista' OR stanowisko = 'Analityk';
Wynik będzie zawierał pracowników, którzy są programistami lub analitykami.
Funkcje LIKE, IN i BETWEEN
Funkcja LIKE
Jeśli chcemy wyszukiwać dane według wzorca, możemy użyć operatora LIKE. Używa on symboli wieloznacznych:
%– zastępuje dowolną ilość znaków_– zastępuje dokładnie jeden znak
Przykłady:
SELECT * FROM klienci WHERE nazwisko LIKE 'Kowal%';
Zapytanie znajdzie klientów, których nazwisko zaczyna się od „Kowal” (np. Kowalski, Kowalewski).
Funkcja IN
Jeśli chcemy sprawdzić, czy dana wartość znajduje się w określonym zbiorze, możemy użyć IN:
SELECT * FROM produkty WHERE kategoria IN ('Elektronika', 'AGD');
Zapytanie zwróci wszystkie produkty należące do kategorii „Elektronika” lub „AGD”.
Funkcja BETWEEN
Funkcja BETWEEN pozwala wybierać wartości z określonego przedziału.
SELECT * FROM zamowienia WHERE data_zlozenia BETWEEN '2024-01-01' AND '2024-06-30';
Zwrotką będą wszystkie zamówienia złożone między 1 stycznia a 30 czerwca 2024 roku.
Obsługa wartości NULL
W SQL wartość NULL oznacza brak danych. Nie można porównywać NULL używając operatorów takich jak = czy !=. Zamiast tego stosuje się:
IS NULL– wyszukuje wartości pusteIS NOT NULL– wyszukuje wartości niepuste
SELECT * FROM klienci WHERE email IS NULL;
Powyższe zapytanie zwróci klientów, którzy nie podali swojego adresu e-mail.
Przykładowa tabela i zapytania
Aby lepiej zobrazować działanie instrukcji WHERE, oto przykładowa tabela „pracownicy”:
| ID | Imię | Stanowisko | Wynagrodzenie | Miasto |
|---|---|---|---|---|
| 1 | Adam | Programista | 7500 | Warszawa |
| 2 | Ewa | Projektant | 6800 | Kraków |
| 3 | Marek | Analityk | 7200 | Warszawa |
Przykładowe zapytania:
SELECT * FROM pracownicy WHERE miasto = 'Warszawa';
Zwróci Adama i Marka.
SELECT * FROM pracownicy WHERE wynagrodzenie > 7000;
Zwróci Adama i Marka, ponieważ ich wynagrodzenie jest większe niż 7000.
Podsumowanie
Instrukcja WHERE w SQL to kluczowy element filtrowania wyników. Dzięki niej można wybrać tylko te dane, które spełniają określone warunki. W artykule omówiłem podstawowe operatory, sposoby łączenia warunków oraz funkcje, które pozwalają zawężać wyniki. Mam nadzieję, że teraz lepiej rozumiesz, jak działa WHERE w języku SQL i jak można go wykorzystać w codziennej pracy z bazami danych.
Inny ciekawy artykuł:
Jak działa SELECT DISTINCT w języku SQL? Przykłady zastosowania
Opanuj SQL z moim kursem!
Poznasz zarówno podstawy, jak i zaawansowane zapytania analityczne (CTE, subqueries, window functions). Nauczysz się pracować na różnych silnikach – na kursie pracujemy zarówno na MySQL, jak i na Postgres. Wszystko zainstalujemy na Twoim komputerze, plus dostaniesz mnóstwo zestawów danych do ćwiczeń.
Zostań analitykiem danych – dołącz do KajoDataSpace!
Najlepsza ścieżka do zawodu analityka danych. Dostęp do pełnych wersji kursów online z Excela, SQLa, PowerBI, Tableau i Pythona z certyfikatami!
🟨 Ekskluzywana ale pomagająca sobie społeczność.
🟩 Ponad 75 godzin materiałów video.
🟨 Spotkania LIVE co miesiąc.
🟩 Mój osobisty mentoring.

