为 Postgres 中提取的列列表中的值创建数组

Sye*_*idi 6 sql arrays postgresql aggregate-functions

我有以下一组表:

id   column_a  column_b   column_c
1     t          f           t
2     t          f           f
3     f          t           f
Run Code Online (Sandbox Code Playgroud)

当被查询时:

SELECT bool_or(column_a) AS column_a
     , bool_or(column_b) AS column_b
     , bool_or(column_c) AS column_c
FROM   tbl
WHERE  id IN (1,2);
Run Code Online (Sandbox Code Playgroud)

结果如下:

column_a   column_b   column_c
 t          f            t
Run Code Online (Sandbox Code Playgroud)

我想从结果中获取数组:[t,f,t]在 Postgres 中。

请在此处参考较早的堆栈问题。

Erw*_*ter 6

使用数组构造函数

SELECT ARRAY [bool_or(column_a)
            , bool_or(column_b)
            , bool_or(column_c)] AS arr_abc
FROM   tbl
WHERE  id IN (1,2);
Run Code Online (Sandbox Code Playgroud)