转换表的SQL语句
寻找一种简单的转置表的方法,以便能够在没有DB功能的软件中进一步分析数据 表:转换表的SQL语句,sql,sql-server,select,Sql,Sql Server,Select,寻找一种简单的转置表的方法,以便能够在没有DB功能的软件中进一步分析数据 表: Id testdate partid testid 1 2-13-2014 45 58 2 2-23-2014 45 2 我想从中提取一个表,将testid放在列名中,将date放在字段中,如下所示: partid test-1 test-2 test-3 ... test-58 ... 45 2-23-2014
Id testdate partid testid
1 2-13-2014 45 58
2 2-23-2014 45 2
我想从中提取一个表,将testid放在列名中,将date放在字段中,如下所示:
partid test-1 test-2 test-3 ... test-58 ...
45 2-23-2014 2-13-2014
可能有几百个睾丸。我计划将代码扩展到每个testid的多个列,例如:test-1-date-test-1-result-test-1-success
更喜欢普通SQL,但如果它必须是特定的,我会选择MS SQL server。好的,找到了它,找到了我需要的“轴心”。搜索PIVOT时,此站点上有许多问题和答案
在我的例子中,与大多数其他PIVOT示例不同的一点是,我尝试聚合字符串而不是数字。(将日期字段视为字符串)
特别有帮助的是:
除非您事先有所有测试的列表,否则必须使用动态SQL进行此操作。没有“变量”列名。是否必须只使用SQL?我建议您复制excel中的表,并将它们转置到excel中。尝试在sql中使用Pivot,就像