2014-01-24 63 views
6

我在我的表中有一列包含VARARCHAY2, 所以我想創建一個select語句,給我所有列 和VARRAY的所有對象旁邊海誓山盟, 有沒有可能的方法來做到這一點?Oracle - 如何從VARRAY讀取

例子:

CREATE TYPE arr AS VARRAY(5) OF VARCHAR2(10); 

CREATE TABLE table1(
    v1 VARCHAR2(10) 
    v2 VARCHAR2(20) 
    v3 arr); 

SELECT t.v1, t.v2, ??? FROM table1 t; 

謝謝!

+0

我只是好奇,如果我的解決方案爲你工作! –

+0

對不起,它沒有像我想要的那樣工作,所以我停止了嘗試! –

回答

5

你想要的就是這個。

SELECT t.v1, t.v2, nt.COLUMN_VALUE 
FROM table1 t, TABLE(t.v3) nt 

結果

V1 V2 COLUMN_VALUE 
a b c 
a b d 
a b e 
f g h 
f g i 

包含t1.v3也給出了逗號seprated值也是如此。

SQL Fiddle