Tsql 透视语句错误

Tsql 透视语句错误,tsql,pivot,Tsql,Pivot,我无法在以下数据集上运行PIVOT Machine AtTime ValueString ------------------------------------------------- 3 2017-06-01 11:42:33.000 Start 3 2017-06-01 11:43:46.000 Stop 5 2017-06-01 12:42:33.000 Start

我无法在以下数据集上运行
PIVOT

Machine   AtTime                     ValueString
-------------------------------------------------
3     2017-06-01 11:42:33.000         Start

3     2017-06-01 11:43:46.000         Stop

5     2017-06-01 12:42:33.000         Start

5     2017-06-01 12:43:46.000         Stop
SQL

SELECT Machine, TimeStart, TimeEnd
FROM
(
      SELECT  Machine, [AtTime], [ValueString]
  FROM [dbo].[DATA_ACTION]
)
) d
PIVOT
(
  MAX(AtTime)
  FOR [AtTime] in (TimeStart, TimeEnd)
) piv;
错误

将数据类型nvarchar转换为datetime时出错

目标

把桌子弄成这样

Machine  TimeStart                  TimeEnd
------------------------------------------------------------
3        2017-06-01 11:42:33.000    2017-06-01 11:43:46.000
5        2017-06-01 12:42:33.000    2017-06-01 12:43:46.000

您应该使用Valuestring:

create table data_action(Machine  nvarchar(50), AtTime datetime,ValueString nvarchar(50))
insert into data_action values (3,'2017-06-01 11:42:33.000','Start')
insert into data_action values (3,'2017-06-01 11:43:46.000','Stop')
insert into data_action values (5,'2017-06-01 12:42:33.000','Start')
insert into data_action values (5,'2017-06-01 12:43:46.000','Stop')


SELECT machine,start as [TimeStart],stop as [TimeEnd]
FROM
(
 SELECT  Machine, [AtTime], [ValueString]
  FROM [dbo].[DATA_ACTION]
) d
PIVOT
(
  MAX(AtTime)
  FOR [ValueString] in ([Start] , [Stop])
) piv;
结果是:

*---------*-------------------------*------------------------*   
|machine  |TimeStart                |TimeEnd                 | 
*---------*-------------------------*------------------------*      
|3        |2017-06-01 11:42:33.000  |2017-06-01 11:43:46.000 | 
*---------*-------------------------*------------------------*      
|5        |2017-06-01 12:42:33.000  |2017-06-01 12:43:46.000 |
*---------*-------------------------*------------------------*       

我不确定。我在我的sql server中做了。它工作正常。