Hello all,
if I want upate tabel work.one for its column x and y as below,and want update their length,but there is error happend when I use length= statement in proc sql .
could anyone tell me how to change variable's length when using update in sql procedure?
Thanks!
Mike
data work.one;
length x y $5;
x='aaa';
y='bbb';
run;
proc sql noprint;
update work.one
set x= catx('|',x,'abcdefghijklmn') length x=$200
,y= catx('|',y"abcdefghilklmn") length y=$200
;
quit;
Hi,
Try this..hope it helps
proc sql;
create table want as
select catx('|',x,'abcdefghijklmn') as x length = 200,catx('|',y,"abcdefghilklmn") as y length = 200 from one;
quit;
Thanks,
Shiva
you can't change the length in an update statement, you need to use a create statemen. Update may change in place, create builds a new table.
As Doc@Duke said, you need another statement to change the length of columns.
data work.one;
length x y $5;
x='aaa';
y='bbb';
run;
proc sql noprint;
alter table work.one modify x char(200),y char(200);
update work.one
set x= catx('|',x,'abcdefghijklmn')
,y= catx('|',y,"abcdefghilklmn")
;
quit;
Ksharp
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 save with the early bird rate—just $795!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.