gpt4 book ai didi

loops - 循环遍历表并在 SAS 中加入它们

转载 作者:行者123 更新时间:2023-12-01 11:29:35 24 4
gpt4 key购买 nike

我想不出解决一个问题。

我在一个 SAS 库中有未知数量的表。我想做一个循环,遍历它们并“UNION ALL”这些表。

表是预先检查过的,它们具有相同的结构。此表包含历史化数据,因此它应该是 Union all。我尝试了以下脚本,但它会搜索所有可能性但不会执行 UNION ALL。

我很感激任何解决这个问题的想法。

%macro union_tables(table_name, last_extract); 
%do i=1 %to &last_extract.;
select * from data.&table_name&i
union all
%end;
select * from data.&table_name&i
%mend;

proc sql;
create table Full_history as
%union_tables(Table_,1216);
quit;

提前致谢。

最佳答案

也许您可以放弃宏并使用 SET 语句。

data Many;
set table_: open=defer;
run;

如果表在变量方面完全相同并且类型 Open=defer 可以节省大量内存。

关于loops - 循环遍历表并在 SAS 中加入它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41828434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com