I would like to include all issues with every status, but include those with a status of 'Closed' only when the DateResolved is within the last 5 days. Include all of the other status values where DateResolved IS NULL.
Data:
IssueStatus DateResolved
Closed 7/25/2021
Closed 7/26/2021
Closed 7/1/2021
In Progress
Deferred
Deferred
This returns only IssueStatus = 'Closed' within last 5 days.
SELECT IssueStatus, DateResolved FROM TABLE
WHERE IssueStatus IN ('Closed','In Progress','Deferred')
AND DateResolved >= DATEADD(d, -5, CAST(GETDATE() AS DATE))
Desired results:
IssueStatus DateResolved
Closed 7/25/2021
Closed 7/26/2021
In Progress
Deferred
Deferred
If don't wish to explicitly list the IssueStatus's to include then you could try something like this
SELECT IssueStatus, DateResolved
FROM [TABLE]
WHERE (IssueStatus='Closed'
AND DateResolved >= DATEADD(d, -5, CAST(GETDATE() AS DATE)))
OR IssueStatus<>'Closed';