我想使用Oracle中的表创建存储过程,并希望在SAS EG中访问。
我的代码如下。
create table xyz as
select * from (
select a,b,c,d
from table_name
)
pivot (MIN('X') for Variable_name in (
'PQR' as PQR, 'PGT' as PGT, 'KLD' as KLD,
'opd' as opd
)
)
order by Variable_name;
是否可以将此表作为存储过程?如果没有,那么请建议解决方案。
答案 0 :(得分:1)
如果我正确理解您的问题,您应该可以使用SQL传递来执行此操作。您只需要在SAS的libname
语句中指定Oracle数据库,它将如下所示:
libname mydblib oracle user=user_name password=pw path='myoracleserver';
然后,您可以使用SAS中的proc sql
来访问此内容。
proc sql;
connect using mydblib;
create table xyz as
select * from connection to mydblib (
select * from (
select a,b,c,d
from table_name
)
pivot (MIN('X') for Variable_name in (
'PQR' as PQR, 'PGT' as PGT, 'KLD' as KLD,
'opd' as opd
)
)
order by Variable_name
);
quit;
此代码在SAS工作库中创建表xyz
。