Я пытаюсь установить условие if внутри предложения where, и я не могу определить правильный синтаксис для того, что я хочу.SQL Server: условие IF внутри условия where
Логика должна быть, если определенный период равен определенному числу, тогда проверьте, чтобы pdftype не был пустым, а затем не проверял все.
Вот что я до сих пор:
where
g.ReportInstanceID = blah
and rcr.FormID = blah
and rcr.FormSectionID = blah
and rcr.SubSectionID = blah
and CASE rcr.DataCollectionPeriodID
WHEN 163 THEN (PDFType IS NOT NULL)
END
Я хотел бы использовать несколько условий с 'OR', как показано в ответ ниже, но вы можете использовать' 'CASE' в WHERE':' И случай, когда rcr.DataCollectionPeriodID = 163 THEN PDFType ELSE 'X' END NOT NULL' –
[This] (http://stackoverflow.com/a/10260297/92546) ответ показывает, как выражение 'CASE' может использоваться в предложении' ON'. То же самое работает для предложения WHERE. – HABO