Ознайомлення з оператором 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,
 posada
FROM
 spivrobitniki
WHERE
 posada = 'Менеджер';

У цьому прикладі інструкція SELECT перевіряє всі рядки таблиці співробітників і вибирає тільки рядок, значення якого в стовпці posada дорівнює Менеджер.

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

У наступному прикладі використовується умова WHERE для пошуку співробітників, назви посад яких є Менеджер, а службові коди рівні 1:

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

У цьому прикладі вираз у реченні WHERE використовує оператор AND для об’єднання двох умов:

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

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

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

Цей запит знаходить співробітників, назва посади яких є Менеджер, або співробітників, які мають офісний код 1:

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

Оператор OR оцінюється як ІСТИНА, тільки якщо один з виразів має значення TRUE:

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

Таким чином, запит повертає будь-якого співробітника, у якого посада є Менеджер або офісний код 1.

Приклад №4: Використання WHERE з оператором BETWEEN

Оператор BETWEEN повертає TRUE, якщо значення знаходиться в діапазоні значень:

expression BETWEEN low AND high

Наступний запит знаходить співробітників, які знаходяться в офісах з офісним кодом від 1 до 3:

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

Приклад №5: Використання WHERE з оператором LIKE

Оператор LIKE оцінюється як ІСТИНА, якщо значення відповідає вказаному шаблону. Щоб сформувати шаблон, ви використовуєте % і _ знаки підстановки. Знак підстановки % відповідає будь-якому рядку, що складається з нуля або більше символів, а знак підстановки _ відповідає будь-якому окремому символу.

Цей запит знаходить співробітників, чиї прізвища закінчуються рядком «ко»:

SELECT
 firstName,
 lastName
FROM
 spivrobitniki
WHERE
 lastName LIKE '%ко';

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

Оператор IN повертає TRUE, якщо значення відповідає будь-якому значенню в списку.

value IN (value1, value2, ...)

У наступному прикладі використовується умова WHERE з оператором IN для пошуку співробітників, які знаходяться в офісі з офісними кодами 1, 2 або 3.

SELECT
 firstName,
 lastName,
 officeKod
FROM
 spivrobitniki
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
 spivrobitniki
WHERE
 officeKod IS NULL;

З сьогоднішнього уроку ви дізналися, як на практиці використовувати умову WHERE в MySQL для фільтрації рядків результатів за необхідними критеріями.

Tags: mysql

Recent Posts

Як вивчити німецьку мову легко і весело? З допомогою Beste Freunde!

Німецька часто вважається складною мовою. Так, німецька лексика має «важкий» характер. Так, є дійсно дуже… Read More

27/09/2020

Опалення і гаряча вода коли треба, а не коли включать

Тепло в домі і гаряча вода в будь-який час для багатьох мешканців багатоквартирних та приватних… Read More

19/09/2020

Інструкція по завантаженню відео з сервісу TikTok (безкоштовно та без watermark)

Якщо ви ще не чули про TikTok, тоді рекомендуємо вам спочатку ознайомитися з цим коротким… Read More

17/09/2020

Що є в бюджетному ноутбуці – на які характеристики розраховувати?

Пройшли ті часи, коли пристойний ноутбук коштував від 1000 доларів. Сьогодні можна купити досить непоганий… Read More

16/09/2020

Що краще: цифрове телебачення Т2 чи інтернет-телебачення

Сучасне життя неможливо уявити без телебачення. Воно дозволяє дізнаватися про події в Україні та світі,… Read More

02/09/2020

Гіпоалергенна подушка. Чому вона важлива?

Зараз знайдеться мало людей, в яких немає алергії на продукти або пилок рослин. Вважається, що… Read More

28/08/2020