SAP HANA SQL-将单个列的多个结果行合并为单个行

时间:2018-09-13 11:55:10

标签: sql sap hana

我正在提取数据,当我在文本字段中提取数据时,有时会有多个“唯一ID”的结果重复。有没有一种方法可以将结果CONCAT划分为单个列/行,而不是重复它们?看起来在其他SQL平台中还有很多方法,但是我无法在HANA中找到有效的方法。

示例
选择
     唯一ID
从表1

如果仅提取唯一ID,则会得到以下信息:

ID
1
2
3
4

但是,当我拉出以下内容时:
示例
选择
     唯一ID,文字
从表1

我得到类似

的东西

ID文字
1条狗
2猫
2狗
3条鱼
4只鸟
4马

当每个ID的行数超过1时,我正在尝试合并“文本”字段。

我需要的结果是什么(在结果之间有一个“中断”,使它们在单独的行上会更好,但至少要有一个“”会起作用):

ID文字
1条狗
2猫狗
3条鱼
4鸟,马

1 个答案:

答案 0 :(得分:0)

我看到Kiran刚刚在评论中提到了另一个有效答案,但是在您的示例中,这是可行的。

SELECT ID, STRING_AGG(Text, ',')
FROM TABLE1
GROUP BY ID;

您可以将','替换为其他字符,也许用'\ n'代替换行符

除非您很了解您的数据,否则我不建议以这种方式连接行的方法。对于要生成的字符串的行数和长度没有有效的限制,但是HANA对字符串的长度有限制,因此请考虑这一点。

相关问题