【发布时间】:2020-12-16 08:30:26
【问题描述】:
我有一个数据集,我想将其从长转换为宽。我有:
**ID **Question** Answer**
1 Follow-up to a
1 Follow-up to a
1 Follow-up to b
1 Follow-up to c
2 Follow-up to b
2 Follow-up to c
4 Follow-up to a
4 Follow-up to b
4 Follow-up to b
6 Follow-up to a
我想要的是数据集看起来像这样:
**ID **Follow-up to**
1 a,b,c
2 b,c
4 a,b
6 a
我希望每个 ID 的多个响应显示在同一行中,并且我希望删除每个 ID 的重复响应。我使用第一个让它在 SAS 中工作。最后。功能,但我不确定如何在 SQL 中完成此操作。数据集有数十万行和数十个变量,就像上面的“后续”示例一样。目前,我正在使用 json 功能以宽格式转置和提取我想要的所有变量,但是转换只为每个 ID 携带 1 个答案,而我需要所有这些都以新格式携带.
提前谢谢你。
【问题讨论】:
-
请用您正在运行的数据库标记您的问题:mysql、oracle、sql-server...?
标签: sql string postgresql group-by string-aggregation