Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
转换表的SQL语句_Sql_Sql Server_Select - Fatal编程技术网

转换表的SQL语句

转换表的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

寻找一种简单的转置表的方法,以便能够在没有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                        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,就像