SAS获取表主键
我是全新的SAS 4GL 是否可以从表中提取哪些列是主键或复合主键的一部分?我需要将它们的值合并到输出数据集的一列中SAS获取表主键,sas,data-integration,Sas,Data Integration,我是全新的SAS 4GL 是否可以从表中提取哪些列是主键或复合主键的一部分?我需要将它们的值合并到输出数据集的一列中 问题是,作为输入,我可以得到不同的表,但我不知道它们的定义。如果定义了索引,那么您可以找出该索引中使用了哪些变量。例如,见: data blah(index=(name)); set sashelp.class; run; proc contents data=blah out=blahconts; run; blahconts中的列指示name位于简单索引中,并且它总共有1
问题是,作为输入,我可以得到不同的表,但我不知道它们的定义。如果定义了索引,那么您可以找出该索引中使用了哪些变量。例如,见:
data blah(index=(name));
set sashelp.class;
run;
proc contents data=blah out=blahconts;
run;
blahconts
中的列指示name
位于简单索引中,并且它总共有1个索引
此外,您还可以使用外键约束,例如:
将约束信息写入输出窗口。从输出数据集中可以看到变量位于简单索引中。您可以在ODS输出中包装其中一个(PROC CONTENTS
或descripe TABLE CONSTRAINTS
),以将信息发送到数据集:
ods output IntegrityConstraints=postalICs;
proc contents data=uspostal out=postalconts;
run;
ods output close;
或
如果定义了索引,则可以找出该索引中使用了哪些变量。例如,见:
data blah(index=(name));
set sashelp.class;
run;
proc contents data=blah out=blahconts;
run;
blahconts
中的列指示name
位于简单索引中,并且它总共有1个索引
此外,您还可以使用外键约束,例如:
将约束信息写入输出窗口。从输出数据集中可以看到变量位于简单索引中。您可以在ODS输出中包装其中一个(PROC CONTENTS
或descripe TABLE CONSTRAINTS
),以将信息发送到数据集:
ods output IntegrityConstraints=postalICs;
proc contents data=uspostal out=postalconts;
run;
ods output close;
或