В этом учебном материале вы узнаете, как использовать SQL оператор WHERE с синтаксисом и примерами.
Описание
SQL оператор WHERE используется для фильтрации результатов и применения условий в операторе SELECT, INSERT, UPDATE или DELETE.
Синтаксис
Синтаксис для оператора WHERE в SQL.
Параметры или аргумент
- conditions
- Условия, которые должны быть выполнены для выбора записей
Пример - одно условие в операторе WHERE
Сложно объяснить синтаксис для SQL оператора WHERE, поэтому давайте начнем с примера, в котором для применения условия 1 используется WHERE.
В этом примере у нас есть таблица suppliers со следующими данными:
supplier_id | supplier_name | city | state |
---|---|---|---|
100 | Yandex | Moscow | Russian |
200 | Lansing | Michigan | |
300 | Oracle | Redwood City | California |
400 | Bing | Redmond | Washington |
500 | Yahoo | Sunnyvale | Washington |
600 | DuckDuckGo | Paoli | Pennsylvania |
700 | Qwant | Paris | France |
800 | Menlo Park | California | |
900 | Electronic Arts | San Francisco | California |
Введите следующий SQL оператор.
1 2 3 |
SELECT * FROM suppliers WHERE state = 'California'; |
Будет выбрано 3 записи. Вот результаты, которые вы должны получить.
supplier_id | supplier_name | city | state |
---|---|---|---|
300 | Oracle | Redwood City | California |
800 | Menlo Park | California | |
900 | Electronic Arts | San Francisco | California |
В этом примере мы использовали SQL оператор WHERE, чтобы отфильтровать результаты из таблицы suppliers. Приведенный выше SQL оператор вернул бы все строки из таблицы suppliers, где state - 'California'. Поскольку в SELECT используется *, то все поля из таблицы suppliers будут отображаться в наборе результатов.
Пример - два условия в операторе WHERE (условие AND)
Вы можете использовать условие AND в операторе WHERE, чтобы указать более 1 условия, которое должно быть выполнено для выбора записи. Давайте рассмотрим, как это сделать.
В этом примере у нас есть таблица customers со следующими данными:
customer_id | first_name | last_name | favorite_website |
---|---|---|---|
4000 | Justin | Bieber | google.com |
5000 | Selena | Gomez | bing.com |
6000 | Mila | Kunis | yahoo.com |
7000 | Tom | Cruise | oracle.com |
8000 | Johnny | Depp | NULL |
9000 | Russell | Crowe | google.com |
Теперь введите следующий SQL оператор.
1 2 3 4 |
SELECT * FROM customers WHERE favorite_website = 'google.com' AND customer_id > 6000; |
Будет выбрана 1 запись. Вот результаты, которые вы должны получить.
customer_id | first_name | last_name | favorite_website |
---|---|---|---|
9000 | Russell | Crowe | google.com |
В этом примере используется оператор WHERE для определения нескольких условий. В этом случае этот SQL оператор использует условие AND, чтобы вернуть всех customers, у которых favorite_website является google.com, и чей customer_id больше 6000.
Пример - два условия в операторе WHERE (условие OR)
Вы можете использовать условие OR в операторе WHERE, чтобы протестировать несколько условий, при которых возвращается запись, если выполняется любое из условий.
В этом примере у нас есть таблица products со следующими данными:
product_id | product_name | category_id |
---|---|---|
1 | Pear | 50 |
2 | Banana | 50 |
3 | Orange | 50 |
4 | Apple | 50 |
5 | Bread | 75 |
6 | Sliced Ham | 25 |
7 | Kleenex | NULL |
Теперь введите следующий SQL оператор.
1 2 3 4 |
SELECT * FROM products WHERE product_name = 'Pear' OR product_name = 'Apple'; |
Будет выбрано записи. Вот результаты, которые вы должны получить.
product_id | product_name | category_id |
---|---|---|
1 | Pear | 50 |
4 | Apple | 50 |