我正在寻找类似下面的查询。
SELECT ROWNUM rnum,COLUMN_VALUE as dl
FROM TABLE(CAST(varc('REGULAR','AD','PR') is varray(3) of varchar2(100)))
输出:
REGULAR
AD
PR
PS:DBA不允许在我们的oracle 11g中创建类型。 使用union是一种选择。但我们正在寻找选择查询中的数组元素列表
请提出任何建议!
答案 0 :(得分:1)
有一些handy collection types already supplied by Oracle - 例如你可以这样做:
select column_value
from table(SYS.DBMS_DEBUG_VC2COLL('REGULAR','AD','PR'));
答案 1 :(得分:0)
您可以使用SYS.ODCIVARCHAR2LIST
类型:
SELECT ROWNUM,
COLUMN_VALUE
FROM TABLE( SYS.ODCIVARCHAR2LIST( 'REGULAR', 'AD', 'PR' ) );