因此,假設,例如,我有具有以下的表:id, address
我想將address
列分成3列:number, street, city
當地址的格式爲123, FakeStreet, FakeCity
時。由分隔符分割的列分成多個列(其可以是或可以不是在那裏)
但是,這裏是抓住!並非address
列中的每個值都有一個數字或城市;其中一些只有街道名稱。在這種情況下,地址只會看起來像FakeStreet
,它應該填寫數字和城市的NULL
。
示例輸入:
id address
--------------
1 123, fake street, fakCity
2 31, barrington, anotherCity
3 main street
4 25, york street, yetAnotherCity
輸出:
id num streetName cityName
------------------------------------
1 123 fake street fakeCity
2 31 barrington anotherCity
3 NULL main street NULL
4 25 york street yetAnotherCity
另外,我可以假設該地址將或者僅具有街道名稱,或整個地址。
有沒有辦法使用SQL或PL SQL來做到這一點?否則,我想我將不得不將它分成兩個單獨的查詢,在sql之外修改它們,然後將兩個查詢的結果放在一起。我想要再多一點...緊湊,因爲缺乏更好的術語。
啊,我還想提一下,我只需要拆分列作爲SELECT
的結果。我不想實際修改表結構。
謝謝。
完美,謝謝! – Rickkwa