Hi guys, probably a really simple thing to do below is some code I use to identify where a patient has attended the ED department whilst also admitted as an Inpatient. This report works fine. However while most of the results are recording issues to be corrected some of them are real and as so can be excluded from the report.
I can simply hardcode these into the code each time but this to me is messy. Is there a way I can build in an exclusion table which would include:
SELECT
IP_ADMISSION.HeyNo AS HEYNo
,IP_ADMISSION.NHSNo2 AS NHSNo
,IP_ADMISSION.Forename AS Forename
,IP_ADMISSION.Surname AS Surname
,IP_ADMISSION.SourceAdmNatCode AS SourceAdm
,IP_ADMISSION.AdmMethGrpDesc AS MethAdm
,AdmitDateTime AS IPAdmitDate
,DischDateTime AS IPDischDate
,IP_ADMISSION.DischWardName AS IPDischWard
,ED_ATTENDANCE.EDAttendanceID AS AENo
,ED_ATTENDANCE.AttendDateTime AS EDAttendDate
,ED_ATTENDANCE.DepartDateTime AS EDDeptDate
,DATEDIFF(minute, IP_ADMISSION.AdmitDateTime, ED_ATTENDANCE.AttendDateTime) AS EDMinsAfterIP
,ED_ATTENDANCE.AttendDate
,IP_ADMISSION.AdmitDate
,IP_ADMISSION.DischDate
,CASE WHEN ED_ATTENDANCE.AttendDate = IP_ADMISSION.AdmitDate OR ED_ATTENDANCE.AttendDate = IP_ADMISSION.DischDate THEN 'Data Quality Challenge - Standard Review' ELSE 'Commissioner Challenge Priority Review' end as [Review Status]
FROM IP_ADMISSION
LEFT OUTER JOIN ED_ATTENDANCE
ON IP_ADMISSION.MFPatientID = ED_ATTENDANCE.MFPatientID
WHERE
IP_ADMISSION.DischDateTime >= @StartDate
AND
IP_ADMISSION.AdmitDateTime <= @EndDate
AND
(ED_ATTENDANCE.AttendDateTime >= IP_ADMISSION.AdmitDateTime
AND
ED_ATTENDANCE.AttendDateTime <= IP_ADMISSION.DischDateTime)
ORDER BY [Review Status] asc, IP_ADMISSION.DischDateTime DESC


