对一组布尔值执行逻辑或(OR)操作,返回操作后的布尔结果。
命令格式
BOOLEAN BOOL_OR(BOOLEAN <expr>)
参数说明
expr:必填。BOOLEAN类型表达式
返回值说明
返回BOOLEAN类型。返回规则如下:
若输入的expr中至少有一个为true,则返回true;若所有值都为false,则返回false。
若输入的expr中包含为NULL的值,NULL值不参与计算。
使用示例
示例一:执行简单逻辑或操作。
SELECT BOOL_OR(colname) FROM VALUES (true), (false), (false) AS tab(colname); -- 返回结果 +------+ | _c0 | +------+ | true | +------+
示例二:数组内存在NULL值,将会忽略组内的NULL值。
SELECT BOOL_OR(colname) FROM VALUES (NULL), (true), (false) AS tab(colname); -- 返回结果 +------+ | _c0 | +------+ | true | +------+ SELECT BOOL_OR(colname1) FROM VALUES (false), (false), (NULL) AS tab(colname1); -- 返回结果 +------+ | _c0 | +------+ | false | +------+
示例三:计算colname1列中所有满足colname2=1的行的逻辑或(OR)结果。
SELECT BOOL_OR(colname1) FILTER(WHERE colname2 = 1) FROM VALUES (true, 1), (false, 1), (true, 2) AS tab(colname1, colname2); -- 返回结果 +------+ | _c0 | +------+ | true | +------+
该文章对您有帮助吗?