我正在处理 SQL 中的 select 语句,并且在尝试创建包含 case 语句或 if else 语句的 where 子句时遇到问题。我想根据变量的值选择记录。如果变量为“True”,则仅从 select 语句中返回列为空的记录。如果变量不是“真”,则返回所有记录,无论该列是否为空。
关于如何做到这一点的任何提示?
下面是我正在尝试做的一个简单示例:
declare @option1 as varchar(5)
--This can be True or False so to test i just put the Set option below
set @option1 = 'True'
Select a,b,c,d...
from ...
where d = case when @option1 = 'True' then NULL End
这是我不知道该怎么做的部分。如果变量为“真”,我只需要过滤掉记录,所以不确定在案例的 else 部分中放置什么。