Що робить оператор IN?
IN - оператор, який перевіряє, чи перебуває значення в списку можливих варіантів.
Він використовується в WHERE, щоб не писати довгі ланцюжки з OR.
Як працює
IN порівнює значення стовпця з набором значень, зазначених у дужках.
Якщо значення збігається хоча б з одним елементом зі списку - умова істинна.
SELECT *
FROM employees
WHERE city IN ('Kyiv', 'Lviv', 'Odesa');Запит обере всіх співробітників, чиї міста - Київ, Львів чи Одеса.
Альтернатива без IN
Без нього довелося б писати довго:
WHERE city = 'Kyiv' OR city = 'Lviv' OR city = 'Odesa'IN робить те саме, але коротше й зрозуміліше.
Заперечення
Якщо додати NOT, вийде перевірка "значення не входить у список":
WHERE department NOT IN ('HR', 'Finance');Виключить усіх з відділів HR і Finance.
Можна використовувати й підзапит
WHERE id IN (SELECT employee_id FROM bonuses);Обирає всіх співробітників, чиї ID є в таблиці bonuses.
Підсумок:
IN - це зручний спосіб фільтрувати за множиною значень одразу.
Працює з числами, текстом і навіть результатами підзапитів.
Коротка відповідь
Для співбесідиКоротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.