Is it possible to create multiple volatile teradata tables in the same SAS session?
Eg. Create a volatile table called vol1 with 10 records in it.
Then create a 2nd volatile table called vol2 that will read the records from vol1.
I'm a bit late to the party with this reply, but in case someone else finds this in the future...
libname x teradata server=&server authdomain=&authdomain connection=global dbmstemp=yes;
options sastrace=',,,d' sastraceloc=saslog;
data x.vol1;
do x=1 to 10;
output;
end;
run;
data x.vol2;
set x.vol1;
y=x**2;
run;
* explicit passthru ;
proc sql;
connect to teradata(server=&server authdomain=&authdomain connection=global);
execute (
CREATE MULTISET VOLATILE TABLE vol3 AS
(
SELECT x,y,(x**3) as z FROM vol2
) WITH DATA
ON COMMIT PRESERVE ROWS
) by teradata;
execute (COMMIT WORK) by teradata;
quit;
* data returned in indeterminate order ;
title "vol1";
proc print data=x.vol1;
run;
title "vol2";
proc print data=x.vol2;
run;
title "vol3";
proc print data=x.vol3;
run;
proc sql;
title "SQL select";
select * from x.vol3 order by x;
create view foo as select * from x.vol3 order by x;
quit;
title "foo view";
proc print data=foo;
run;Pay close attention to the trace output in the SAS log.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.