0
我想用SQL Server 2008 R2查詢UNPIVOT Cnvert Column to Rows。如何使用UNPIVOT將列轉換爲行SQL Server?
但它是錯誤
**Msg 170, Level 15, State 1, Line 16
Line 16: Incorrect syntax near 'unpivot'.**
代碼:
SELECT EmpNo, CDate, CTime
FROM
(SELECT EmpNo,ChkDate,ChkIn,ChkOut
FROM TA_FillTime) ta1
UNPIVOT
(CTime FOR CDate IN (ChkIn, ChkOut)
) AS ta2
表TA_FillTime:
EmpNo | ChkDate | ChkIn | ChkOut
1290005 | 2013-05-09 | 2013-05-09 07:04:26.000 | 2013-05-09 17:57:36.000
1320005 | 2013-05-09 | 2013-05-09 07:56:17.000 | 2013-05-09 18:24:35.000
1320007 | 2013-05-09 | 2013-05-09 07:45:50.000 | 2013-05-09 17:24:55.000
我需要輸出:
EmpNo | CDate | CTime
1290005 | 2013-05-09 | 2013-05-09 07:04:26.000
1290005 | 2013-05-09 | 2013-05-09 17:57:36.000
1320005 | 2013-05-09 | 2013-05-09 07:56:17.000
1320005 | 2013-05-09 | 2013-05-09 18:24:35.000
1320007 | 2013-05-09 | 2013-05-09 07:45:50.000
1320007 | 2013-05-09 | 2013-05-09 17:24:55.000
感謝您的時間,:)
你已經寫了實際上將轉化'ChkIn'和'Chkout'列行值。檢查[SQL小提琴演示](HTTP查詢: //sqlfiddle.com/#!3/a6a40/2) – praveen 2013-05-09 10:07:13
我希望這有助於http://blog.sqlauthority.com/2008/05/29/sql-server-unpivot-table-example/ – Narendra 2013-05-09 10:10:39