我有以下类型:
ng-mobile-click
和
create or replace TYPE XXMC_CUST_OV_ACCT_TYP AS OBJECT (
account_number NUMBER
, account_description VARCHAR2(1000)
, classification VARCHAR2(200)
, account_type VARCHAR2(50)
, sales_channel VARCHAR2(100)
, date_established DATE
, status VARCHAR2(50)
);
我想要实现的是使用单个create or replace TYPE "XXMC_TABLE_CUST"
AS
TABLE OF APPS.XXMC_CUST_OV_ACCT_TYP;
查询populate XXMC_TABLE_CUST
类型XXMC_CUST_OV_ACCT_TYP
多种SQL
类型。我可以通过PL/SQL
循环浏览光标并使用其他记录扩展XXMC_TABLE_CUST
来执行此操作,但我希望在单行SQL
查询中执行此操作。
如果我尝试使用此查询来获取XXMC_CUST_OV_ACCT_TYP
类型的多个记录:
SELECT XXMC_CUST_OV_ACCT_TYP
(10000||rownum, 'A', 'B', 'C', 'D', '15-DEC-2003', 'Active')
from HZ_PARTIES where rownum<4
然后我在输出中得到这样的东西:
[APPS.XXMC_CUST_OV_ACCT_TYP]
[APPS.XXMC_CUST_OV_ACCT_TYP]
[APPS.XXMC_CUST_OV_ACCT_TYP]
但是,当我尝试使用以下查询将这些多个记录分组到一个XXMC_TABLE_CUST
对象中时:
SELECT XXMC_TABLE_CUST(
(SELECT XXMC_CUST_OV_ACCT_TYP
(10000||rownum, 'A', 'B', 'C', 'D', '15-DEC-2003', 'Active') from HZ_PARTIES where rownum<4
))
from DUAL;
我收到以下错误消息:
单行子查询返回多行
如何将这些多个XXMC_CUST_OV_ACCT_TYP
行转换为XXMC_CUST_OV_ACCT_TYP
?
感谢。
答案 0 :(得分:0)
Ponder Stibbons在上述评论中回答:
select cast(multiset(select * from hz_party) as xxmc_table_cust) from dual