2012-12-20 92 views
5

我不知道如何從表中選擇具有類型列的語句? 此列的類型定義爲:Oracle SQL:從嵌套表中選擇

create or replace TYPE "MYCOL" as table of MYTYPE; 
create or replace TYPE "MYTYPE" as OBJECT 
(myid Number, myname Varchar2); 

UPD1 表被定義爲

CREATE TABLE "T_TABLE" 
    ( "ID" NUMBER NOT NULL ENABLE, "NAME" "MYCOL") 

如果我select * from T_TABLE選擇此專欄中,我會得到這個沒有翔實的結果:

1, MYSCHEMA.MYCOL([MYSCHEMA.MYTYPE],[MYSCHEMA.MYTYPE]) 

我只想解開這種類型。

+0

以及如何定義你的表? –

+0

顯示由SQL客戶端處理。 SQL * Plus會將其顯示爲例如:'MYCOL(MYTYPE(1,'somevalue'))' –

回答

10

試試這樣說:

select t."ID", tt.myid, tt.myname 
from "T_TABLE" t, table(t."NAME") tt; 

Here is a sqlfiddle demo

+0

它的工作原理!謝謝! –