gpt4 book ai didi

sql - Postgres : array_agg throws 'cannot accumulate empty arrays' for empty array(s)

转载 作者:行者123 更新时间:2023-11-29 11:21:30 24 4
gpt4 key购买 nike

在行包含空数组 ({}) 时使用 array_agg 时出现问题。

这是我的 SQL 查询:

SELECT service_name, metric_name, array_agg(value_textarray)
FROM service_data
WHERE service_name = 'ActivityDataService'
GROUP BY service_name, metric_name

列定义如下:

service_name - text
metric_name - text
value_textarray - text[]

当我执行查询并且数据库中有空数组 ({}) 时,出现以下错误:

ERROR:  cannot accumulate empty arrays

我应该如何解决这个问题?

最佳答案

我有同样的问题,我无法过滤空数组,我找到了这个函数。此函数避免了“累积空数组”错误。

CREATE AGGREGATE array_accum (anyarray)
(
sfunc = array_cat,
stype = anyarray,
initcond = '{}'
);

来源:https://gist.github.com/ryandotsmith/4602274

关于sql - Postgres : array_agg throws 'cannot accumulate empty arrays' for empty array(s),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43472482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com