Hello,
I do need to use proc sql to merge two dataset.
I am getting an error when I am using following code. It seems like I am getting error from line 4 (from lptssp.dm a ).
SAS Code:
proc Sql;
create table _input_dataset_ex as
select a.usubjid, a.arm,
from lptssp.dm a
right join (select * from &input_dataset_ex) b
on a.usubjid=b.usubjid
where a.arm ne '';
quit;
Error:
Error log:
MPRINT(D0UNBLIND0EX): proc sql;
NOTE: Line generated by the invoked macro "D0UNBLIND0EX".
218 create table _input_dataset_ex as select a.usubjid, a.arm,
218! from lptssp.dm a right join (select * from &input_dataset_ex) b on a.usubjid=b.usubjid
------ -
22 79
218! where a.arm ne ''; quit; */ ; proc sort data=_input_dataset_ex
SYMBOLGEN: Macro variable INPUT_DATASET_EX resolves to lptssp.ex
MPRINT(D0UNBLIND0EX): create table _input_dataset_ex as select a.usubjid, a.arm, from lptssp.dm
a right join (select * from lptssp.ex) b on a.usubjid=b.usubjid where a.arm ne '';
ERROR 22-322: Syntax error, expecting one of the following: !, !!, &, (, *, **, +, ',', -, /, <,
<=, <>, =, >, >=, ?, AND, BETWEEN, CONTAINS, EQ, EQT, FROM, GE, GET, GT, GTT, LE,
LET, LIKE, LT, LTT, NE, NET, OR, ^=, |, ||, ~=.
ERROR 79-322: Expecting a FROM.
that comma after 'a.arm' is likely the culprit. There shouldn't be a comma before the FROM statement.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.