错误代码如下:
- %macro read_data(inDS=,outDS=,keyID=,column=);
- /* 根据一些特定的keyID,读取目标表中的特定字段 */
- proc sql;
- connect to oracle as data (user=name password=pass path=path1);
- %do i=1 %to &n.;
- create table temp_&i. as
- select * from connection to data(
- select &column. /* 此变量有问题 */
- from &inDS.
- where &keyID. in &&key_id_&i. /* &&key_id_&i.已经提前定义好 */
- );
- %end;
- disconnect from data;
- quit;
- /* 把读取的数据合并到一起 */
- data &outDS.;
- set
- %do i=1 %to &n.;
- temp_&i.
- %end;;
- run;
-
- proc datasets nodetails nolist library=work;
- delete temp_:;
- run;quit;
- %mend read_data;
- %read_data(inDS=table1,outDS=table2,keyID=id,column=column1,column2,column3);