Here is the code....
CASE WHEN BD.VIN = S.VIN THEN S.Dlr_GMF_ID ELSE "" END AS SOLD_DEALER_CODE_Cognos,
CASE WHEN BD.BIDDER_DEALER_CODE = (CASE WHEN BD.VIN = S.VIN THEN S.Dlr_GMF_ID ELSE "" END AS SOLD_DEALER_CODE_Cognos) THEN "WON" ELSE "LOST" END AS WON_LOSS
What am I doing wrong here?
Try removing as cognos_... variable portion of your nested CASE portion.
Another possible option within the statement may be IFC
Not tested but I believe both case statements below would give you what you're after
CASE
WHEN BD.BIDDER_DEALER_CODE =
(CASE
WHEN BD.VIN = S.VIN THEN S.Dlr_GMF_ID
ELSE ""
END
)
THEN "WON"
ELSE "LOST"
END
AS WON_LOSS
CASE
WHEN BD.VIN = S.VIN and BD.BIDDER_DEALER_CODE = S.Dlr_GMF_ID then "WON"
when BD.VIN ne S.VIN and BD.BIDDER_DEALER_CODE=' ' then "WON"
ELSE "LOST"
END
AS WON_LOSS
Should be
CASE
WHEN BD.VIN = S.VIN THEN S.Dlr_GMF_ID
ELSE ""
END AS SOLD_DEALER_CODE_Cognos,
CASE
WHEN BD.BIDDER_DEALER_CODE = CALCULATED SOLD_DEALER_CODE_Cognos THEN "WON"
ELSE "LOST"
END AS WON_LOSS
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 save with the early bird rate—just $795!
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.
Ready to level-up your skills? Choose your own adventure.