2

我希望仅返回在其 VARRAY 中包含某个字符串的行。

表定义:

create table studentClasses(
student_id INTEGER,
full_name VARCHAR2(30),
phone_nos varray_num,
classes varray_class,
subjects_registered nestedsubjecttable, 
home_address O_ADDRESS ,
next_of_kin VARCHAR2(30),
nok_address O_ADDRESS 
)nested table subjects_registered store as ext_classes;

我插入的一部分

insert into studentClasses values(1, 'John Doe',
                              varray_num('1', '2', '3', '4', '5', '6'),
                              ....

我希望能够返回在其 phone_nos VARRAY 中包含特定数字的所有条目。因此,在他们的变量中返回带有“6”的人。

有任何想法吗?

4

1 回答 1

1

尝试

Select student_id ,full_name
From studentClasses t1,
Table(t1.phone_nos) t2
Where Column_Value = 6;

希望这可以帮助。

参考:第 57 天:PL/SQL - 5(PL/SQL 中的 VArray)

NB~我没有要检查的环境,但它应该可以工作

于 2015-10-24T20:48:29.770 回答