BookmarkSubscribeRSS Feed
Babloo
Rhodochrosite | Level 12

Any help to resolve this issue? Getting an error like unexpected 'on' at line number 4

 

 

update pre_claim_lin_1_test pci
set pci.LINE_DIA_PRIM_DESC = diag.description 
from (select max(description) description from COMDB.ON_DATA.MR_DIAGNOSIS_CODE c inner join raw.prepa_claim_inst r on r.PRINCIPAL_DIAG = c.DIAGNOSI_CODE
where  c.ICD1_INDICATOR<>'N')diag on 1=1 and pci.id  =7828 ;

 

​If I tried to remove ON and add WHERE, I'm getting an error like invalid  field diag.description 

update pre_claim_lin_1_test pci
set pci.LINE_DIA_PRIM_DESC = diag.description 
from (select max(description) description from COMDB.ON_DATA.MR_DIAGNOSIS_CODE c inner join raw.prepa_claim_inst r on r.PRINCIPAL_DIAG = c.DIAGNOSI_CODE
where  c.ICD1_INDICATOR<>'N')diag where pci.id  =7828 ;

 

3 REPLIES 3
Mazi
Pyrite | Level 9
data test;
	set sashelp.class;
	age=.;
run;

proc sql;
	update test a
		set age = (select age from sashelp.class as b where a.name = b.name);
quit;

Can you try something similar to this?

Create a temporary table first where you select the max description and use that table in the set statement.

If you have some sample data, please share it, and I can show you a practical example with your data.

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 622 views
  • 0 likes
  • 3 in conversation