带有Date列的SQL PIVOT

时间:2018-04-06 22:43:26

标签: sql datetime pivot

我有这个样本数据(仅显示子集)

Task Name   Start Date
---------   ---------- 
Task 1      2018-10-01
Task 2      2018-05-06
Task 3      NULL
Task 4      2018-10-05

我想看看这个输出

Task 1      Task 2      Task 3      
------      ------      ------      
2018-10-01  2018-05-06  NULL  

我尝试了以下内容 -

SELECT *
FROM
(SELECT [Task Name],[Start Date]
  FROM [TABLENAME]) AS SourceTable
PIVOT
(
MAX([Start Date])
FOR [Task Name] in (['Task 1'],['Task 2'],['Task 3'])
) AS PivotTable;

但它不起作用。帮助赞赏!

1 个答案:

答案 0 :(得分:0)

嗯。我认为FOR陈述是错误的。尝试删除单引号:

FOR [Task Name] in ([Task 1], [Task 2], [Task 3])

当您包含单引号时,它们是名称的一部分。他们真的不是这个名字的一部分。