SQL - WHERE Klauzula
SQL WHEREKlauzula służy do określenia warunku podczas pobierania danych z pojedynczej tabeli lub przez połączenie z wieloma tabelami. Jeśli podany warunek jest spełniony, to tylko on zwraca określoną wartość z tabeli. Do filtrowania rekordów i pobierania tylko niezbędnych rekordów należy używać klauzuli WHERE.
Klauzula WHERE jest używana nie tylko w instrukcji SELECT, ale jest również używana w instrukcjach UPDATE, DELETE itp., Które będziemy badać w kolejnych rozdziałach.
Składnia
Podstawowa składnia instrukcji SELECT z klauzulą WHERE jest przedstawiona poniżej.
SELECT column1, column2, columnN
FROM table_name
WHERE [condition]
Możesz określić warunek za pomocą porównania lub operatorów logicznych, takich jak>, <, =,LIKE, NOTitp. Poniższe przykłady wyjaśniają tę koncepcję.
Przykład
Rozważ tabelę CUSTOMERS zawierającą następujące rekordy -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Poniższy kod jest przykładem, który pobierałby pola ID, Imię i wynagrodzenie z tabeli KLIENCI, gdzie pensja jest większa niż 2000 -
SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE SALARY > 2000;
Dałoby to następujący wynik -
+----+----------+----------+
| ID | NAME | SALARY |
+----+----------+----------+
| 4 | Chaitali | 6500.00 |
| 5 | Hardik | 8500.00 |
| 6 | Komal | 4500.00 |
| 7 | Muffy | 10000.00 |
+----+----------+----------+
Poniższe zapytanie jest przykładem, które pobrałoby pola ID, Nazwisko i Wynagrodzenie z tabeli CUSTOMERS dla klienta o nazwisku Hardik.
W tym miejscu należy zauważyć, że wszystkie ciągi należy podać w apostrofach („”). Natomiast wartości liczbowe należy podawać bez cudzysłowu, jak w powyższym przykładzie.SQL> SELECT ID, NAME, SALARY
FROM CUSTOMERS
WHERE NAME = 'Hardik';
Dałoby to następujący wynik -
+----+----------+----------+
| ID | NAME | SALARY |
+----+----------+----------+
| 5 | Hardik | 8500.00 |
+----+----------+----------+