2016-02-15 41 views
0

我甚至不知道如何對此問題進行短語搜索。這裏是我的表:將表格導入mysql並將標題作爲行值使用

enter image description here

我想把這個變成MySQL中的表是這樣的:

enter image description here

我不知道如何來自動完成這個任務。我使用的實際表格太大,無法像本例那樣手動進行。任何指導或幫助將不勝感激,謝謝!

+0

@德魯是否爲我關閉了太多話題?或者是什麼? – Shadow

回答

0

MySQL沒有內置功能unpivoting,所以你將不得不使用UNION ALL

SELECT 'A' AS Country, Date, A As 'Amount' 
FROM yourTable 
UNION ALL 
SELECT 'B' AS Country, Date, B As 'Amount' 
FROM yourTable 
UNION ALL 
SELECT 'C' AS Country, Date, C As 'Amount' 
FROM yourTable 
UNION ALL 
SELECT 'D' AS Country, Date, D As 'Amount' 
FROM yourTable 
UNION ALL 
SELECT 'E' AS Country, Date, E As 'Amount' 
FROM yourTable 
+0

謝謝。我不知道我的意圖是什麼!我使用微軟的powerquery插件來做到這一點,然後只是將我的表格加載爲CSV。 – ajthyng

0
SELECT 'SELECT ''' + [COLUMN_NAME] +''' as Country, Date, Amount 
FROM yourTable 
WHERE Country =''' + [COLUMN_NAME] +''' UNION' 
FROM [INFORMATION_SCHEMA].[COLUMNS] 
WHERE [TABLE_NAME] ='yourTable' 

而且比結果會是你想要的SQL。

相關問題