我有一個表類似於下面的以下內容:在沒有使用UNION的情況下將一行換成MySQL的列?
id | cat | one_above | top_level |
0 'printers' 'hardware' 'computers'
我希望能夠編寫一個查詢,不使用工會,將返回我調換此表的列到結果集行。這意味着,我想要的結果是:
id | cat |
0 'printers'
0 'hardware'
0 'computers'
這是可能的MySQL?我無法下載到應用程序層並執行此操作,因爲我將這些內容提供給將根據ID進行索引的搜索引擎。其他各種DBMS有類似PIVOT和UNPIVOT。我很感激任何見解,我失蹤的東西。
Mahmoud
P.S.
我在考慮重新規範化數據庫作爲最後一個選項,因爲這不是一項簡單的任務。
謝謝!
當前不可能MySql – 2009-12-05 10:24:29
爲什麼是這個社區Wiki? – 2009-12-05 10:50:14
SQL Server 2005+和Oracle 11g +支持PIVOT/UNPIVOT。我不知道任何其他數據庫支持語法。 – 2009-12-05 19:18:58