我需要讓表中的行出現在sql服務器的列中,因爲Im正在記錄人們的年假 - 用戶想要在.net中創建的什麼樣的內容在他們的電子表格中顯示爲什麼即將這樣做。我聽說你可以使用PIVOT table.I有以下select語句:如何將行轉換爲SQL服務器中的列
select
typeID,
datesFrom,
datesTo
from availability
where authno = 24
它返回如下:
+--------+-------------------------+-------------------------+
| typeID | datesFrom | datesTo |
+--------+-------------------------+-------------------------+
| 1 | 2015-02-16 00:00:00.000 | 2015-02-23 00:00:00.000 |
| 2 | 2015-06-23 00:00:00.000 | 2015-06-29 00:00:00.000 |
+--------+-------------------------+-------------------------+
但我的問題是,我需要它看起來象下面這樣:
+--------+---------------------+-------------------+--------+-----------------+---------------+
| typeID | datesFrom(February) | datesTo(February) | typeID | datesFrom(June) | datesTo(June) |
+--------+---------------------+-------------------+--------+-----------------+---------------+
| 1 | 16/02/2015 | 23/02/2015 | 2 | 23/06/2015 | 29/06/2015 |
| | | | | | |
+--------+---------------------+-------------------+--------+-----------------+---------------+
任何幫助是極大的,非常感謝。我還沒有找到一個顯示這樣的日期的支點
令人驚訝的是,這個問題有多少次被問到。也許如果你在問別人幫助你之前只是谷歌,你可能會發現答案一直存在。 http://stackoverflow.com/questions/18026236/sql-server-columns-to-rows只是其中之一 – Jaques 2015-02-23 11:01:16
第一個評論是UNPIVOT所以對我沒有用,第二個評論不處理它的日期 – wubblyjuggly 2015-02-23 11:44:15