SELECT patientname, patientinsurance, patienthistory, (CASE WHEN patientinsurance IS NOT NULL THEN 'insured' WHEN CDPrintBatchId IS NULL THEN 'uninsured' END) AS insurancestatus FROM [dbo]..database WHERE admissiontime BETWEEN '2020-09-03' AND '2020-09-04'
So for my above query, I want to use IIF
instead of CASE
, because I want to show only uninsured patients, would something be correct? Because if I only use one case in my case scenario, the null will should up in my insurancestatus column instead of uninsured.
SELECT IIF(patient("Null") = 0, 'YES', 'NO');
Basically I just want the result for null showing up in result, excluding not null
Advertisement
Answer
This query is equivalent to the one posted except it returns ‘uninsured’ in all FALSE cases. insurancestatus will not be NULL
SELECT patientname, patientinsurance, patienthistory, iif(patientinsurance is not null, 'insured', 'uninsured') insurancestatus FROM [dbo]..database where admissiontime between '2020-09-03' and '2020-09-04';