我有一份在不同州开展业务的商家名单。
Merch State
A NC
A FL
B CA
B VA
而不是返回我希望由Merch分组的四条记录,而是连接状态的字符串,以便输出看起来像
Merch States
A NC,FL
B CA,VA
我在这个问题的答案中翻译响应时遇到了很多麻烦 Optimal way to concatenate/aggregate strings
我也无法使String_agg工作,我不确定它在Teradata中是否有效。 https://docs.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql
答案 0 :(得分:0)
您可以在Teradata中使用xml_agg()
内置功能。这并不能很好地从SQL Server转换,这就是为什么你遇到这两个链接的问题。
SELECT merch, TRIM(TRAILING ',' FROM (XMLAGG(States || ',' ORDER BY States) (VARCHAR(500))))
FROM yourtable
GROUP BY 1;