BOOL_AND

bool_and([distinct] expr)

Description

The BOOL_AND function is used to determine whether a set of boolean values (expr) are all true. When all given boolean values are true, the function returns true; otherwise, it returns false. If the distinct keyword is set, the function will only evaluate unique boolean values.

Parameter Description

  • expr: The boolean expression to be logically ANDed.

Return Type

Boolean value.

Usage Example

  1. Determine if all boolean values are true:

SELECT bool_and(col) FROM VALUES (true), (true), (true) AS tab(col); +---------------+ | bool_and(col) | +---------------+ | true | +---------------+

  1. Cases with null values:

SELECT bool_and(col) FROM VALUES (true), (true), (null) AS tab(col); +---------------+ | bool_and(col) | +---------------+ | true | +---------------+

  1. Use the distinct keyword to determine if all boolean values are true after deduplication:

SELECT bool_and(DISTINCT col) FROM VALUES (true), (true), (true) AS tab(col); +------------------------+ | bool_and(DISTINCT col) | +------------------------+ | true | +------------------------+

  1. Cases that include false values:

SELECT bool_and(col) FROM VALUES (false), (true), (null) AS tab(col); +---------------+ | bool_and(col) | +---------------+ | false | +---------------+

  1. Only contains one true value and one false value:

SELECT bool_and(col) FROM VALUES (true), (false) AS tab(col); +---------------+ | bool_and(col) | +---------------+ | false | +---------------+