Перейти к содержимому
Последнее обновление

Операторы IN

Описание​

Оператор IN проверяет, входит ли значение в список значений или в результат подзапроса.

Обзор операторов​

ОператорНазначениеПример
INПроверяет, равно ли значение хотя бы одному из элементов. Если да, возвращает TRUE.SELECT 1 IN (SELECT 2)
NOT INПроверяет, что значение не равно ни одному из элементов. Если это так, возвращает TRUE.SELECT 1 NOT IN (3, 4, 5)

Ограничения типов​

IN и NOT IN поддерживают только скалярные значения примитивных типов. Сложные типы, такие как ARRAY, MAP и STRUCT, а также объектные типы нельзя использовать в качестве выражения в левой части или значений в списке IN.

Например, следующие SQL-операторы недопустимы:

SELECT STRUCT(1, 2) IN (STRUCT(1, 2));
SELECT [1, 2] IN ([1, 2]);
SELECT MAP('a', 1) IN (MAP('a', 1));