in
Predykat
Zwraca wartość true
, jeśli elem
równa się dowolnemu exprN
wierszowi lub wierszowi w .query
Składni
elem in ( expr1 [, ...] )
elem in ( query )
Argumenty
-
elem
: Wyrażenie dowolnego porównywalnego typu. -
exprN
: Wyrażenie dowolnego typu współużytkuje najmniej wspólny typ ze wszystkimi innymi argumentami. -
query
: dowolne zapytanie. Wynik musi współużytkować najmniej wspólny typ z .elem
Jeśli zapytanie zwraca więcej niż jedną kolumnęelem
, musi być krotką (STRUCT) o tej samej liczbie pól
Zwraca
Wyniki są wartością logiczną.
Przykłady
> SELECT 1 in(1, 2, 3);
true
> SELECT 1 in(2, 3, 4);
false
> SELECT (1, 2) IN ((1, 2), (2, 3));
true
> SELECT named_struct('a', 1, 'b', 2) in(named_struct('a', 1, 'b', 1), named_struct('a', 1, 'b', 3));
false
> SELECT named_struct('a', 1, 'b', 2) in(named_struct('a', 1, 'b', 2), named_struct('a', 1, 'b', 3));
true
> SELECT 1 IN (SELECT * FROM VALUES(1), (2));
true;
> SELECT (1, 2) IN (SELECT c1, c2 FROM VALUES(1, 2), (3, 4) AS T(c1, c2));
true;