in
谓词
如果 elem
等于任何 exprN
或 query
中的一行,则返回 true
。
语法
elem in ( expr1 [, ...] )
elem in ( query )
参数
elem
:任何可比较类型的表达式。exprN
:与所有其他参数共有最不常见类型的任何类型的表达式。query
:任何查询。 结果必须与elem
共有最不常见类型。 如果查询返回多个列,则elem
必须是具有相同数量字段的元组(结构)
返回
结果为一个布尔值。
示例
> 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;