Hi All -
Cannot get past "ERROR: Result of WHEN clause 2 is not the same data type as the preceding results." Stumped with this sequence of events....
Prior PROC SQL step:
..............
input(A.INITIAL_DELV_D,yymmdd8.) as INIT_DELV_DT length=8 label="INIT_DELV_DT" format=DATE9. informat=DATE9.,
input(A.CURR_DELIVERY_D,yymmdd8.) as CURR_DELV_DT length=8 label="CURR_DELV_DT" format=DATE9. informat=DATE9.
.............. All looks good after this step......
Current PROC SQL step:
Proc sql;
Create Table REVENUE_EW As
Select DISTINCT A.FISCAL_YEAR, A.FISCAL_MONTH, A.SERNO, A.INIT_DELV_DT, A.CURR_DELV_DT, A.AMOUNT,
CASE When B.ALT_EXP_DT IS NOT NULL Then B.ALT_EXP_DT Else B.EXPIRATION_DT End AS SECURE_EXP_DT "SECURE_EXP_DT" format=DATE9.,
CASE WHEN A.TYPE_ID = 1 THEN A.BASIC_ST_DT WHEN A.TYPE_ID = 2 THEN A.CURR_DELV_DT Else " " END AS SECURE_ST_DT "SECURE_ST_DT" format=Date9.,
CASE WHEN A.TYPE_ID = 1 THEN "NEW, TRANSFER, UPGRADE" WHEN A.TYPE_ID = 2 THEN "CERTIFIED USED" Else " " END AS TYPE "TYPE",
From REVENUE1 A;
Quit;
After informating CURR_DELV_DT, it has the same length, format and informat as BASIC_ST_DT. Not sure where the obvious issue is. Thanks in advance.
Its the ELSE " " END that's the issue. Your variable is numeric and missing in SAS for numeric is .
So it should be
Else .
END
If you format your code, and use a code block, the little i or paper icon 6/7 icon at top of the editor, the code wlll be readable. As is, it's hard to decipher.
In fact, you can usually find the difference and answer pretty quickly once it's readable.
Its the ELSE " " END that's the issue. Your variable is numeric and missing in SAS for numeric is .
So it should be
Else .
END
I knew it was going to be obvious.... Thanks everyone!
Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.
If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website.
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.