В этой статье показано, как использовать предложение WHERE в MySQL для фильтрации строк по определенному условию. Используя предложение where, мы можем указать условие поиска для строк, которые возвращают значение true для условия, и выполнять с ними действия.
Синтаксис предложения WHERE:
SELECT column_list FROM TABLE_NAME WHERE condition;
Мы начинаем с определения начального действия, которое нужно выполнить; это может быть SELECT, DELETE, UPDATE или любой другой поддерживаемый оператор.
Затем мы указываем столбцы и таблицу, над которыми нужно выполнить указанное действие.
Наконец, мы вызываем предложение WHERE, за которым следует условие для оценки; это может быть единственное условие, возвращающее логическое значение. Мы также можем комбинировать несколько условий, используя логические операторы, такие как AND, OR или NOT.
Вы можете думать о предложении WHERE в MySQL как о выражении if на любом языке программирования. MySQL сравнивает, соответствуют ли строки указанному условию, и, если оно истинно, возвращает их вызывающему оператору.
Общие операторы, которые вы можете использовать с предложением WHERE, включают:
ОПЕРАТОР | ФУНКЦИОНАЛЬНОСТЬ |
---|---|
= РАВЕНСТВО | Оператор равенства проверяет, равны ли два набора значений друг другу. |
>= больше или равно | Определяет, больше или равно ли левое значение значению справа. |
<= меньше или равно | Проверяет, меньше ли значение слева или равно |
> больше чем | Проверяет, больше ли значение слева, чем значение справа |
< меньше чем | Оценивает, меньше ли значение слева значения справа |
!= или <>> не равно | Проверяет, не равны ли оба значения. |
Если условие, указанное в предложении WHERE, не соответствует ни одной строке в таблице, оно не возвращает ни одной строки.
Давайте проиллюстрируем, как использовать предложение WHERE с использованием различных условий.
Пример 1
Мы можем использовать предложение WHERE с единственным условием.
SELECT title, release_year, LENGTH, rating FROM film LIMIT 5;
Мы можем использовать предложение WHERE, чтобы получить фильмы продолжительностью точно 120 минут. Для этого мы можем использовать запрос:
SELECT title, release_year, LENGTH, rating FROM film WHERE LENGTH = 120;
В приведенном выше примере мы используем оператор равенства (=) для получения фильмов длиной 120.
Пример 2
Мы также можем комбинировать несколько условий, используя логический оператор AND. В этом случае оба условия должны быть истинными.
Например, в приведенной выше таблице фильмов мы можем получить фильмы продолжительностью 120 минут и стоимостью замены более 10.
SELECT title, release_year, LENGTH, rating, replacement_cost FROM film WHERE LENGTH = 120 AND replacement_cost > 10;
В этом примере фильм должен иметь продолжительность 120 минут и стоимость замены более 10 минут.
Пример 3
Другой логический оператор, который мы можем использовать с предложением WHERE, — это оператор OR. В этом случае должно выполняться только одно условие.
Например, мы можем получить фильмы с длиной больше 150 или с replace_cost больше или равной 18.
Следующий запрос показывает, как использовать такое условие.
SELECT title, release_year, LENGTH, rating, replacement_cost FROM film WHERE LENGTH > 150 OR replacement_cost >= 18 LIMIT 10;
В этом случае мы получаем много значений, так как нам нужна только пленка, имеющая длину больше 150 или значение replace_cost равное или больше 18.
Пример 4
Еще одна реализация предложения WHERE — использование оператора BETWEEN. В таком сценарии мы можем указать диапазон значений для проверки.
Ниже приводится пример запроса:
SELECT title, release_year, LENGTH, rating, replacement_cost FROM film WHERE LENGTH BETWEEN 120 AND 150 LIMIT 10;
Пример 5
Мы также можем реализовать условие WHERE с помощью оператора LIKE. В этом случае мы находим соответствующий случай, используя подстановочные знаки MySQL LIKE.
Например, мы можем найти актеров, у которых first_name включает m.
SELECT * FROM actor WHERE first_name LIKE '%m';
В этой статье вы узнали, как использовать предложение MySQL для проверки определенного условия и возврата результата.