2017-09-27 145 views
-2

我在一個單列中有4種類型的值,並希望使用SQL在4個不同的列中拆分這些值。將值拆分到列SQL

這是我的表:

Name Car 
--------------- 
John Tesla 
John Renault 
John Mercedes 
John VW 

而且我想有這樣的結果:

Name Car1 Car2  Car3  Car4 
----------------------------------------- 
John Tesla Renault Mercedes VW 

誰能幫助?

謝謝

+0

您是否想要永久更改表格或只是想在查詢中顯示這些結果? –

+2

標記您正在使用的'RDBMS' –

+0

歡迎來到SO。本網站不是代碼編寫服務,不適用於提供完整的解決方案。預計用戶將展示一些努力和代碼,而SO在此期間將幫助您解決具體的編程問題。你有沒有嘗試過任何東西?請閱讀:https://stackoverflow.com/help/asking –

回答

0

好吧,我想通了意見完全一致。我沒有意識到,當你在SQL中執行SELECT函數時,實際上是在創建一個新列。我以爲你只是合併在一起的列。

所以我的代碼很乾脆:

SELECT 
    (CASE WHEN car = "Tesla" THEN name ELSE Null END) as Car_type_1 
    (CASE WHEN car = "Renault" THEN name ELSE Null END) as Car_type_2 
    (CASE WHEN car = "Mercedes" THEN name ELSE Null END) as Car_type_3 
    (CASE WHEN car = "VW" THEN name ELSE Null END) as Car_type_4 

應該已經學會了SQL的基礎!希望這有助於其他人在我的情況。