Ознакомление с оператором WHERE в MySQL

В сегодняшнем уроке мы рассмотрим на практике то, как использовать условие WHERE в операторе SELECT для фильтрации строк из набора результатов в MySQL.

 

 

Основы использования условия WHERE в MySQL

Условие WHERE позволяет задать условие поиска для строк, которые возвращаются в запросе. Ниже показан синтаксис условия WHERE:

SELECT
 select_query
FROM
 table_name
WHERE
 condition;

 

 

Условие condition – это комбинация одного или нескольких утверждений, которые используют логический оператор AND, OR и NOT.

В MySQL утверждение (предикат) – это логическое выражение, которое оценивается как TRUE, FALSE или UNKNOWN.

Любая строка из table_name, которая приводит к тому, что condition оценивается как TRUE, будет включена в окончательный набор результатов.

Помимо оператора SELECT, вы можете использовать условие WHERE в операторе UPDATE или DELETE, чтобы указать, какие строки нужно обновить или удалить.

В операторе SELECT условие WHERE оценивается после условия FROM и перед условием SELECT.

 

 

Примеры условия WHERE в MySQL

 

Пример №1: Использование условия WHERE с оператором равно

В следующем запросе используется условие WHERE для поиска всех сотрудников, названия должностей которых являются Менеджер:

SELECT
 lastname,
 firstname,
 dolzhnost
FROM
 sotrudniki
WHERE
 dolzhnost = 'Менеджер';

 

В этом примере инструкция SELECT проверяет все строки таблицы сотрудников и выбирает только строку, значение которой в столбце dolzhnost равно Менеджер.

 

 

Пример №2: Использование условия WHERE с оператором AND

В следующем примере используется условие WHERE для поиска сотрудников, названия должностей которых являются Менеджер, а служебные коды равны 1:

SELECT
 lastname,
 firstname,
 dolzhnost,
 officeKod
FROM
 sotrudniki
WHERE
 dolzhnost = 'Менеджер' AND
 officeKod = 1;

 

 

В этом примере выражение в предложении WHERE использует оператор AND для объединения двух условий:

dolzhnost = 'Менеджер' AND officeKod = 1;

 

Оператор AND оценивается как ИСТИНА (TRUE), только если оба выражения имеют значение TRUE. Поэтому запрос возвращает строки, значения которых в столбце dolzhnost равны Менеджер, а officeKod равен 1.

 

 

Пример №3: Использование условия WHERE с оператором OR

Этот запрос находит сотрудников, название должности которых является Менеджер, или сотрудников, которые имеют офисный код 1:

SELECT
 lastName,
 firstName,
 dolzhnost,
 officeKod
FROM
 sotrudniki
WHERE
 dolzhnost = 'Менеджер' OR
 officeKod = 1;

 

 

Оператор OR оценивается как ИСТИНА, только если одно из выражений имеет значение TRUE:

dolzhnost = 'Менеджер' OR officeKod = 1

 

Таким образом, запрос возвращает любого сотрудника, у которого есть должность Менеджер или офисный код 1.

 

 

Пример №4: Использование WHERE с оператором BETWEEN

Оператор BETWEEN возвращает TRUE, если значение находится в диапазоне значений:

expression BETWEEN low AND high

 

Следующий запрос находит сотрудников, которые находятся в офисах с офисным кодом от 1 до 3:

SELECT
 firstName,
 lastName,
 officeKod
FROM
 sotrudniki
WHERE
 officeKod BETWEEN 1 AND 3
 ORDER BY officeKod;

 

 

Пример №5: Использование WHERE с оператором LIKE

Оператор LIKE оценивается как ИСТИНА, если значение соответствует указанному шаблону. Чтобы сформировать шаблон, вы используете % и _ подстановочные знаки. Подстановочный знак % соответствует любой строке, состоящей из нуля или более символов, а подстановочный знак _ соответствует любому отдельному символу.

 

Этот запрос находит сотрудников, чьи фамилии заканчиваются строкой «ов»:

SELECT
 firstName,
 lastName
FROM
 sotrudniki
WHERE
 lastName LIKE '%ов';

 

 

 

Пример №6: Использование условия WHERE с оператором IN

Оператор IN возвращает TRUE, если значение соответствует любому значению в списке.

value IN (value1, value2, ...)

 

В следующем примере используется условие WHERE с оператором IN для поиска сотрудников, которые находятся в офисе с офисными кодами 1, 2 или 3.

SELECT
 firstName,
 lastName,
 officeKod
FROM
 sotrudniki
WHERE
 officeKod IN (1, 2, 3);

 

 

 

Пример №7: Использование условия WHERE с оператором IS NULL

Чтобы проверить, является ли значение NULL или нет, вы используете оператор IS NULL, а не оператор равенства (=). Оператор IS NULL возвращает TRUE, если значение равно NULL.

value IS NULL

 

В мире баз данных NULL – это маркер, который указывает, что часть информации отсутствует или неизвестна. Это не эквивалентно числу 0 или пустой строке.

Этот оператор использует условие WHERE с оператором IS NULL, чтобы получить строку, значение которой в столбце officeKod равно NULL:

SELECT
 lastName,
 firstName,
 officeKod
FROM
 sotrudniki
WHERE
 officeKod IS NULL;

 

 

 

Из сегодняшнего урока вы узнали, как на практике использовать условие WHERE в MySQL для фильтрации строк результатов по нужным критериям.

 

Recent Posts

Зачем выбирать образование за границей: преимущества для будущего вашего ребенка

Учеба за границей уже давно ассоциируется с качественным образованием, новыми возможностями и множеством перспектив. Но…

3 дня ago

Как выбрать мастера для перетяжки мебели?

Выбор мастера для ремонта и перетяжки мебели — задача, которая требует вдумчивого подхода. Ведь от…

4 дня ago

Что лучше выбрать для хостинга: сервер VPS Windows или VPS Linux?

Выбор идеального хостинга под свой сайт может быть довольно запутанным делом, особенно когда существует так…

2 недели ago

Лоуренс Питер

Чтобы избегать ошибок, нужно набираться опыта; чтобы набираться опыта, надо делать ошибки Лоуренс Питер  

2 недели ago

Что такое Черное СЕО (Black Hat SEO) — вся нужная информация

Краткое определение Черного SEO Черное СЕО (или Черная оптимизация) — это любая практика, целью которой…

2 недели ago

Права категории C: кому они нужны и как их получить?

Получение водительских прав категории C открывает двери к профессиональной деятельности, связанной с управлением грузовыми автомобилями.…

3 недели ago