日期:2014-05-17  浏览次数:21006 次

求,跪求,如何查询表中自定义类型(集合数组)的字段值 SQL怎么写!急!急!急!

类型定义:1
CREATE   OR   REPLACE   TYPE   类型1   AS   OBJECT
(
    XXX       VARCHAR(64),
    YYY       VARCHAR(64)
)

类型定义:2
CREATE   OR   REPLACE   TYPE     类型2   AS   VARRAY(100)   OF   类型1

表:
表1中字段“AAA”字段类型为“类型2”(其实就是一个集合数组)

问题:主要是想在VB中调用此SQL,请问要查询   表1   中   AAA   字段     SQL怎么写?   或者用函数、过程?

------解决方案--------------------
CREATE OR REPLACE TYPE type1 AS OBJECT(
XXX VARCHAR(64),
YYY VARCHAR(64));
/
CREATE OR REPLACE TYPE type2 AS VARRAY(100) OF type1;
/
CREATE TABLE tab1(aaa type2);
/

insert into tab1 values( type2(type1( 'a ', '1 '),type1( 'b ', '2 '),type1( 'c ', '3 ')) );

select t.xxx,t.yyy from table(select aaa from tab1) t;
输出为
XXX YYY
---------------------------- --------------------
a 1
b 2
c 3