我想选择所有列值,而不考虑NULL作为列值
我的问题是当我尝试使用IS NULL选择值时,我也得到了这样的记录,这也将NULL作为值:(
declare @status varchar(50)=NULL
declare @path varchar(50)= 'India'
select
*
from [vwMYDATA]
where
Path like '%' + @path + '%' and
(Status = @status or @status IS NULL)
vwMYDATA
path status
INDIA1 NULL
INDIA2 close
INDIA3 open
如果我执行上述查询,我将获取其状态列为NULL值的所有记录
如果未指定状态值,则应显示所有状态记录
path status
INDIA1 NULL
INDIA2 close
INDIA3 open
它显示
path status
INDIA1 NULL
我将这两个参数传递给具有此选择语句的存储过程。
如果未提供状态作为输入,请帮助我过滤掉并显示所有记录
select
*
from [vwMYDATA]
where
Path like '%' + @path + '%' and
((@status IS NULL )OR (Status = @status or status IS NULL))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句