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 lock in 2025 pricing—just $495!
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.