我正在尝试string_agg a列,同时对列进行排序,并且只显示唯一的值。考虑下面的演示。是否存在语法问题,或者我所使用的方法根本不可能做到这一点?SELECT STRING_AGG(DISTINCT foo.a::TEXT,',' ORDER BY foo.a DESC) SELECT 2
) AS fo
我知道,如果指定select DISTINCT,下面的查询将导致错误排序项必须出现在选择列表中。如果我不使用DISTINCT或只按城市添加生日,它会给出一些输出,但不会出现错误。是因为SELECT DISTINCT city只给出了城市的结果集,而没有其他的结果集吗?编辑-(我认为这可能是对我问题的回答)FROM HR.Employees
WHERE country = N'USA' AND region