please check below query
DECLARE @status varchar(1)
DECLARE @code varchar(50)
Set @status = '0'
select id,code from MasterTable where
('07/31/2012' between StartDate and EndDate) and
Case when @status = '0' and Status=@status then 1 end = 1
this query works for me, but not work for @Status=1
I need query like
if @Status = '0'
select id,code from MasterTable where
('07/31/2012' between StartDate and EndDate) and Status = @Status
if @code <> '0'
select id,code from MasterTable where
('07/31/2012' between StartDate and EndDate) and Status = @Status and code =@code
else
select id,code from MasterTable where
('07/31/2012' between StartDate and EndDate)
if @code <> '0'
select id,code from MasterTable where
('07/31/2012' between StartDate and EndDate) and Status = @Status and code =@code
How can I achieve this using case when statement ?
You can simplify the query by rephrasing it slightly: