【发布时间】:2018-03-23 01:25:48
【问题描述】:
寻找一种简单的方法来转置表,以便能够在没有数据库功能的软件中进一步分析数据。
表:
Id testdate partid testid
1 2-13-2014 45 58
2 2-23-2014 45 2
我想从中提取一个表,将 testid 放在其字段中的列名和日期中,如下所示:
partid test-1 test-2 test-3 ... test-58 ...
45 2-23-2014 2-13-2014
可能有几百个 testid。我计划将代码扩展到每个 testid 的多个列,例如:test-1-date test-1-result test-1-success。
更喜欢通用 SQL,但如果必须具体,我会是 MS SQL 服务器。
【问题讨论】:
-
除非您事先拥有所有测试的列表,否则您必须使用动态 SQL 来执行此操作。没有“变量”列名之类的东西。
-
是否必须只使用 SQL?我建议您将表格复制到excel中并在那里转置。
-
尝试在 sql 中使用 Pivot,例如 stackoverflow.com/questions/14618316/…
标签: sql sql-server select