我正在从 presto 中的 json 列中提取数据,并在像这样的数组中获取输出 [AL,null,NEW]。问题是我需要删除 null,因为该数组必须映射到另一个数组。我尝试过有几个选项,但没有运气。我如何删除 null 并仅获取 [AL,NEW] 而不取消嵌套?
您可以使用
filter()
SELEtrino> SELECT filter(ARRAY['AL',null,'NEW'], e -> e IS NOT NULL); _col0 ----------- [AL, NEW] (1 row)
如果
array_agg
NULL
来自:
SELECT array_agg(name)
致:
SELECT array_agg(name) FILTER (WHERE name IS NOT NULL)