SAS SQL查询-链接到存储在UNIX文件夹中的SAS数据集

SAS SQL查询-链接到存储在UNIX文件夹中的SAS数据集,sql,oracle,sas,Sql,Oracle,Sas,我有一个SAS数据集,其中包含存储在UNIX文件夹中的客户ID(表名为CUSTOMERID)。我需要从客户信息表中获取所有这些客户ID的信息 我使用以下查询: SELECT * FROM CUSTOMERINFORMATION WHERE CUSTOMER_ID IN (select * from CUSTOMERID) 我收到一个错误,因为当查询在ORACLE上运行时(使用SAS),表CUSTOMER ID在UNIX上 有什么想法吗?假设您正在pass-through SQL中运行SQL查

我有一个SAS数据集,其中包含存储在UNIX文件夹中的客户ID(表名为
CUSTOMERID
)。我需要从客户信息表中获取所有这些客户ID的信息

我使用以下查询:

SELECT * FROM CUSTOMERINFORMATION
WHERE CUSTOMER_ID IN (select * from CUSTOMERID) 
我收到一个错误,因为当查询在ORACLE上运行时(使用SAS),表CUSTOMER ID在UNIX上


有什么想法吗?

假设您正在pass-through SQL中运行SQL查询。在这种情况下,您不能直接访问SAS数据。您需要使用
LIBNAME
access构建整个SQL查询,或者需要将
CUSTOMERID
表上载到UNIX

如果你有

proc sql;
connect to oracle (connection string);
select * from connection to oracle (
  select * from customerinformation where customerID in []
);
quit;
你可以把它转换成

libname ora oracle (connection string); *oracle or OLEDB or ODBC or etc.;
proc sql;
select * from ora.customerinformation where customerId in 
  (select * from unix.customerID);
quit;
libname ora clear;
也可以使用相同的libname方法将表加载到Oracle

最后,如果customerid列表足够小,可以将其存储在包含逗号分隔的id列表的宏变量中;宏文本只要不在单引号中就可以解析