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
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.