Przejdź do treści
Wróć do kursuDane i QA / Lekcja 3 z 10

Lekcja 3 / filtrowanie

WHERE: znajdź konkretne rekordy

Teraz po raz pierwszy zawęzisz wynik. Nie chcesz już widzieć wszystkich użytkowników, tylko tych, którzy spełniają jeden prosty warunek.

Sytuacja z pracy

Support pyta: „Pokaż mi zablokowane konta, bo chcę sprawdzić, czy zgłoszenie użytkownika może wynikać z blokady”. Masz już wybrane kolumny. Teraz potrzebujesz tylko wybranych wierszy.

Tabela przed filtrowaniem

idemailstatus
1anna@example.comactive
2bartek@example.comblocked
3celina@example.compending
4damian@example.comblocked

Nowe pojęcie: WHERE

WHERE działa jak bramka: przepuszcza tylko te wiersze, które pasują do warunku. W tej lekcji używamy jednego warunku równości. Bez AND, bez OR, bez kombinowania.

Tekst w SQL zapisujemy w apostrofach, dlatego status ma postać 'blocked'.

Zapytanie SQL

SELECT id, email, status
FROM users
WHERE status = 'blocked';

Wynik

idemailstatus
2bartek@example.comblocked
4damian@example.comblocked

Co to znaczy dla QA?

Wynik mówi, które konta mają status blocked. Nie mówi jeszcze, dlaczego są zablokowane ani czy blokada jest poprawna. SQL daje fakt do dalszej analizy, nie magiczną odpowiedź na cały problem.

Mini-zadanie

Zmień warunek tak, żeby znaleźć użytkowników ze statusem pending.

Podpowiedź
SELECT id, email, status
FROM users
WHERE status = 'pending';

Ćwiczenie praktyczne

Napisz krótką notatkę: „Znalazłem konta ze statusem blocked. To oznacza..., ale nadal nie wiem...”. Uczysz się oddzielać fakt z bazy od interpretacji.

Quiz

Co robi WHERE?

Zostawia tylko wiersze pasujące do warunku.

Dlaczego 'blocked' jest w apostrofach?

Bo to wartość tekstowa.

Czy status blocked wyjaśnia przyczynę blokady?

Nie. Pokazuje stan konta, ale przyczyna wymaga kolejnych danych albo logów.

Co dalej?

Jeden warunek często wystarcza na start, ale w realnych zgłoszeniach szybko pojawi się potrzeba: „pokaż blocked albo pending” lub „pending utworzone po konkretnej dacie”. Tym zajmiemy się teraz.

Lekcja 3: WHERE: znajdź konkretne rekordy | SQL od podstaw dla QA | Mikołaj Mikołajczak