parameter to check is null or is not null in sql server 2008?
I have one table Employee
Eno ename image
1 aaa a.jpg
2 bbb b.jpg
3 ccc null
4 ddd nul开发者_Python百科l
I pass the parameter to the query
declare @a varchar(10)
select * from employee where ?
? if i pass image is not null mean i want all employee details who have image other wise
i want image is null employee details who not have image.
select *
from employee
where (@a is null and image is null)
or (@a is not null and image is not null )
Not 100% sure but I think you want
WHERE (@a is null AND image is NULL)
OR (@a is not null AND image is not NULL)
This is short and sweet but not SARGable so it won't perform well:
select *
from employee
where coalesce(image,'') = coalesce(@a,'')
For better performance, I'd go with:
if @a is not null
select *
from employee
where image = @a
else
select *
from employee
where image is null
精彩评论