У сьогоднішньому уроці ми розглянемо на практиці те, як використовувати умову WHERE в операторі SELECT для фільтрації рядків з набору результатів в 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
для пошуку всіх співробітників, назви посад яких є Менеджер:
SELECT lastname, firstname, posada FROM spivrobitniki WHERE posada = 'Менеджер';
У цьому прикладі інструкція SELECT
перевіряє всі рядки таблиці співробітників і вибирає тільки рядок, значення якого в стовпці posada
дорівнює Менеджер.
У наступному прикладі використовується умова 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.
Цей запит знаходить співробітників, назва посади яких є Менеджер, або співробітників, які мають офісний код 1:
SELECT lastName, firstName, posada, officeKod FROM spivrobitniki WHERE posada = 'Менеджер' OR officeKod = 1;
Оператор OR
оцінюється як ІСТИНА, тільки якщо один з виразів має значення TRUE
:
posada = 'Менеджер' OR officeKod = 1
Таким чином, запит повертає будь-якого співробітника, у якого посада є Менеджер або офісний код 1.
Оператор BETWEEN
повертає TRUE
, якщо значення знаходиться в діапазоні значень:
expression BETWEEN low AND high
Наступний запит знаходить співробітників, які знаходяться в офісах з офісним кодом від 1 до 3:
SELECT firstName, lastName, officeKod FROM spivrobitniki WHERE officeKod BETWEEN 1 AND 3 ORDER BY officeKod;
Оператор LIKE
оцінюється як ІСТИНА, якщо значення відповідає вказаному шаблону. Щоб сформувати шаблон, ви використовуєте %
і _
знаки підстановки. Знак підстановки %
відповідає будь-якому рядку, що складається з нуля або більше символів, а знак підстановки _
відповідає будь-якому окремому символу.
Цей запит знаходить співробітників, чиї прізвища закінчуються рядком «ко»:
SELECT firstName, lastName FROM spivrobitniki WHERE lastName LIKE '%ко';
Оператор IN
повертає TRUE
, якщо значення відповідає будь-якому значенню в списку.
value IN (value1, value2, ...)
У наступному прикладі використовується умова WHERE
з оператором IN
для пошуку співробітників, які знаходяться в офісі з офісними кодами 1, 2 або 3.
SELECT firstName, lastName, officeKod FROM spivrobitniki WHERE officeKod IN (1, 2, 3);
Щоб перевірити, чи є значення 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 для фільтрації рядків результатів за необхідними критеріями.
Навчання за кордоном вже давно асоціюється з якісною освітою, новими можливостями та безліччю перспектив. Але…
Вибір майстра для ремонту та перетяжки меблів – завдання, яке потребує вдумливого підходу. Адже від…
Вибір ідеального хостингу під свій сайт може бути досить заплутаною справою, особливо коли існує багато…
Щоб уникати помилок, потрібно набиратися досвіду; щоб набиратися досвіду, потрібно робити помилки Лоуренс Пітер
Коротке визначення Чорного SEO Чорне СЕО (або Чорна оптимізація) — це будь-яка практика, метою якої…
Отримання прав водія категорії C відкриває двері до професійної діяльності, пов'язаної з керуванням вантажними автомобілями.…