1
A
回答
1
CREATE TABLE #Table1(Value VARCHAR(10),Id VARCHAR(10))
INSERT INTO #Table1(Value ,Id)
SELECT 'A',1 UNION ALL
SELECT 'B',2 UNION ALL
SELECT 'C',3 UNION ALL
SELECT 'D',4 UNION ALL
SELECT 'E',5
;WITH _CTE (Name) AS
(
SELECT Value [Name]
FROM #Table1
UNION ALL
SELECT Id [Name]
FROM #Table1
)
SELECT * FROM _CTE
1
最棘手的部分是在交替行
select col2
from
(select col1, 1 as flag, col1 from tab
union all
select col1, 2, col2 from tab
) as dt
order by col1, flag
但是,爲什麼你嘗試這樣做,在所有數據?
1
試試這個:
WITH CTE AS
(
SELECT Col1Name Name,(ROW_NUMBER() OVER(ORDER BY(SELECT NULL))) RN
FROM TableName
UNION
SELECT Col2Name Name,(ROW_NUMBER() OVER(ORDER BY(SELECT NULL)))+1 RN
FROM TableName
)
SELECT Name
FROM CTE
ORDER BY RN
+0
這種排序是你可以做的最好的,沒有第三列強加排序。也許你可以擴展? –
+0
感謝您的建議。但是這個腳本會得到你想要的結果。你也可以試試這個樣本數據。 ;) –
+1
當然很確定:)我只是想指出'ORDER BY(SELECT NULL))'執行任意排序。當例如索引被添加/改變時它可以改變。我會打出一個答案,但看到已經有三個答案,我只是想,也許你可以擴大這個答案。 –
2
我會用一個UNION ALL
但這裏是UNPIVOT
選擇:
CREATE TABLE #Table1(letter VARCHAR(10),Id VARCHAR(10))
INSERT INTO #Table1(letter ,Id)
SELECT 'A',1 UNION ALL
SELECT 'B',2 UNION ALL
SELECT 'C',3 UNION ALL
SELECT 'D',4 UNION ALL
SELECT 'E',5
SELECT [value]
FROM #Table1
UNPIVOT
(
[value] FOR [Column] IN ([Id], [letter])
) UNPVT
DROP TABLE #Table1;
相關問題
- 1. 結合兩列到一個使用django_tables2
- 2. 使用兩個函數進行散列與一個
- 3. OpenCL,爲單個設備使用兩個命令隊列進行雙緩衝
- 4. 如何使用兩行將兩列顯示爲一列?
- 5. 一次用libpcap監聽兩個設備
- 6. 使用一列比較兩個csv
- 7. 使用一個collection_select分配兩列
- 8. 兩列和一個頁腳使用css
- 9. SQL Server - 從兩行,一列到一行,兩列?
- 10. 使用行明智減法合併兩個表到一個
- 11. 使用.corr得到兩列
- 12. 列中備用行的備用數據
- 13. 使用GKPeerPickerController連接兩個設備
- 14. 使用wifi連接兩個Android設備
- 15. 使用SQL一個表合併兩行單列
- 16. 僅限一列中的備用行 - CSS
- 17. 使用兩個陣列
- 18. 使用兩個datetime列
- 19. 使用兩個列表
- 20. 使用兩個列表
- 21. 把兩列放到一個
- 22. 使用一個TableViewController類創建一個兩個tableview列表
- 23. 定義兩個引用到另一個表中的同一列
- 24. 使用LINQ使用兩個鍵列加入兩個數據表
- 25. 如何使用AutoMapper將一個列表映射到兩個列表?
- 26. 使用jQuery將兩個標籤附加到同一行
- 27. 更好地使用一個列表對,或兩個列表?
- 28. 使用兩個ajax調用創建一個列表
- 29. 藍牙 - > Winapi/32feet。使用Spp從PC到一臺設備的兩個連接
- 30. 使用兩列
你可以嘗試使用功能,這或使用CTE查詢與子功能 – Learning
的組合要獲得排序權限,以便在交替行中獲得結果,您需要向源表中添加第三列以強制排序。再加上下面的答案,這應該會讓你獲得預期的輸出。 –
似乎這裏的主要問題是將SQL表視爲與電子表格相同。儘管膚淺的相似之處,但它們不是一回事。所有的行值都應該與一個「東西」緊密對齊。分開的行應該是獨立的。行和列不可互換。 –