我试图使用string_agg函数聚合一列数据,同时按照该列数据排序并只显示唯一值。考虑以下示例。是否存在语法问题或者使用的方法不可行?
SELECT STRING_AGG(DISTINCT foo.a::TEXT,',' ORDER BY foo.a DESC)
FROM (
SELECT 1 As a
UNION ALL
SELECT 1
UNION ALL
SELECT 1
UNION ALL
SELECT 2
) AS foo
该错误意味着,在使用DISTINCT的聚合函数时,ORDER BY表达式必须包含在函数的参数列表中。[2019-11-22 13:29:32] [42P10] 错误:在带有DISTINCT的聚合函数中,ORDER BY表达式必须出现在参数列表中 [2019-11-22 13:29:32] 位置:53