BOOL_OR 函数
BOOL_OR 函数在单个布尔/整数列或表达式上运行。此函数将类似的逻辑应用于 BIT_AND 和 BIT_OR 函数。对于此函数,返回类型为布尔值(true
、false
或 NULL
)。
如果集合中的一个或多个值为 true
,则 BOOL_OR 函数返回 true
(t
)。如果集合中的所有值为 false
,则函数返回 false
(f
)。如果值未知,则可以返回 NULL。
语法
BOOL_OR ( [DISTINCT | ALL] expression )
参数
- expression
-
对其执行函数的目标列或表达式。此表达式必须具有 BOOLEAN 或整数数据类型。该函数的返回类型为 BOOLEAN。
- DISTINCT | ALL
-
利用参数 DISTINCT,该函数可在计算结果之前消除指定表达式的所有重复值。利用参数 ALL,该函数可保留所有重复值。ALL 是默认值。请参阅 按位聚合的 DISTINCT 支持。
示例
您可以将布尔函数与布尔表达式或整数表达式结合使用。例如,以下查询从 TICKIT 数据库中的标准 USERS 表返回结果,该表包含多个布尔列。
BOOL_OR 函数对所有 5 个行返回 true
。每个州中至少有一个用户喜欢运动。
select state, bool_or(likesports) from users group by state order by state limit 5; state | bool_or ------+-------- AB | t AK | t AL | t AZ | t BC | t (5 rows)
以下示例返回 NULL。
SELECT BOOL_OR(NULL = '123')
bool_or ------ NULL