BOOL_OR 函数 - Amazon Redshift

BOOL_OR 函数

BOOL_OR 函数在单个布尔/整数列或表达式上运行。此函数将类似的逻辑应用于 BIT_AND 和 BIT_OR 函数。对于此函数,返回类型为布尔值(truefalseNULL)。

如果集合中的一个或多个值为 true,则 BOOL_OR 函数返回 truet)。如果集合中的所有值为 false,则函数返回 falsef)。如果值未知,则可以返回 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