Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 составить where по колонке типа bit  [new]
володька трынькин
Member

Откуда:
Сообщений: 141
добрый день, коллеги
помогите правильно составить условие where.
суть в следующем : составляю процедуру в которой происходит выборка из таблицы. одна из колонок этой таблицы - типа bit. входной параметр процедуры может быть true, false либо все значения. как в этом случае составить where?
как вариант пока вижу использование двух запросов:
create proc spSomeProc
...
@somevar bit = null
...
as
if (@somevar is null) 
    select ... -- без фильтра where
else 
    select ...where somecolumn = @somevar 
однако этот вариант неудобен, если в таблице несколько колонок с типом bit
наверняка есть более гибкое решение
19 май 11, 20:21    [10680832]     Ответить | Цитировать Сообщить модератору
 Re: составить where по колонке типа bit  [new]
iljy
Member

Откуда:
Сообщений: 8711
володька трынькин,

https://www.sql.ru/faq/faq_topic.aspx?fid=114
19 май 11, 20:35    [10680870]     Ответить | Цитировать Сообщить модератору
 Re: составить where по колонке типа bit  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
WHERE @somevar IS NULL OR somecolumn = @somevar
Но somecolumn только IS NULL так не получишь!
19 май 11, 20:42    [10680884]     Ответить | Цитировать Сообщить модератору
 Re: составить where по колонке типа bit  [new]
володька трынькин
Member

Откуда:
Сообщений: 141
iap, iljy

большое спасибо!
19 май 11, 20:55    [10680910]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить