我有一个查询,需要按照一列进行分组,并检查是否有任何记录在不同的列中具有数据:
SELECT
bar,
MAX(CASE WHEN baz IS NOT NULL THEN 1 ELSE 0 END)::BOOLEAN as baz_has_data
FROM
foos
GROUP BY
bar
我觉得这有点晦涩,而使用 ANY
和 ARRAY_AGG
会更清晰。不幸的是,我找不到任何包含 IS NOT NULL
和 ANY(ARRAY_AGG ...)
的例子。这个是否可行?