2013-03-06 113 views
1

是否有一種方法可以在不使用存儲過程的情況下遍歷SQL中的數組?比如給定:SQL迭代通過數組

a | b 
--+------ 
a | {1,2} 

我想給數組各行扁平化,如:

a | b 
--+--- 
a | 1 
a | 2 

澄清:我試圖做到這一點Postgres裏,並正在尋找一個純SQL解決方案,而不是使用存儲過程。如果我錯了,請糾正我的錯誤,但我認爲這在以前的問題中沒有解決。謝謝!

+0

RDBMS是什麼? [一種可能的方式](https://www.ibm.com/developerworks/mydeveloperworks/blogs/SQLTips4DB2LUW/entry/how_to_split_a_string_into_a_set_of_rows_anti_listagg12?lang=en),[和另一種](http://microsoft-ssis.blogspot.com/ 2012/11/split-multi-value-column-into-multiple.html) – xQbert 2013-03-06 15:03:40

+0

@ muistooshort,是的,我的錯誤。你如何解除刪除? – Ben 2013-03-07 13:55:34

+0

@Ben:我不認爲你可以,也許檢查http://meta.stackoverflow.com/。無論如何,它需要五票才能結束,所以希望人們有責任,並在同意你的意見之前閱讀評論:)我敢肯定,我們都做出了錯誤的近親選票。 – 2013-03-07 18:21:16

回答

2

很簡單

select a, unnest(b) 
from t