Случай из выбора с нулевым - PullRequest
       0

Случай из выбора с нулевым

0 голосов
/ 22 февраля 2012

У меня много данных, и для примера приведу нижеприведенные данные

    d1  date                        OL
    N   2012-03-09 00:00:00.000     NULL
    No  2011-09-26 00:00:00.000     OL
    N   2012-01-26 00:00:00.000     NOL
    N   2012-03-07 00:00:00.000     NOL
    yes 2012-02-23 00:00:00.000     NULL

мне нужно написать как

Create proc dbo.usp_all_property_search
(@type varchar(2))
as
begin
select * from tbl where ol is
select case @type
when 'o' then null
else
not null
end

end

Пожалуйста, помогите мне.

Ответы [ 5 ]

2 голосов
/ 22 февраля 2012

Ты слишком усложняешь это:

SELECT *
FROM Tbl
WHERE (@type = 'o' AND ol IS NULL)
OR (@Type <> 'o' AND ol IS NOT NULL)
1 голос
/ 22 февраля 2012
select * from tbl
where (@type = 'o' and ol is null) OR
    (@type <> 'o' and ol is not null)
0 голосов
/ 22 февраля 2012
Create proc dbo.usp_all_property_search(@type varchar(2))
as
begin
  select * 
  from tbl 
  where 
     ( @type = 'o' and
       ol is null)        or
     ( @type != 'o' and
       ol is not null);
end
0 голосов
/ 22 февраля 2012

Это работает?

Create proc dbo.usp_all_property_search
(@type varchar(2))
as
begin
select * from tbl 
where (@type = 'o' and ol is null)
OR (@type != 'o' AND ol is not null)

end
0 голосов
/ 22 февраля 2012

Я думаю, что вы хотите это:

select * from tbl where (@type = 'o' and ol is null) or (@type != 'o' and ol is not null)

Case выражения должны возвращать значение , а SQL Server даже не поддерживает логический тип данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...