Я строю запрос для поиска в MS SQL 05
У меня есть 4 вещи, которые пользователь может выбрать, и я хочу использовать логику AND для него.
, но я могу 'Кажется, он не работает, когда в него передаются значения NULL.
вот что у меня есть:
ALTER PROCEDURE [dbo].[sp_FindSource]
-- Add the parameters for the stored procedure here
@Code varchar(500),
@ssid varchar(50),
@serialNo varchar(50),
@category decimal(10,5)
as begin
SELECT *
FROM tblSource
WHERE Code IN (
SELECT Value
FROM funcListToTableInt(@Code,',')
)
and SSID LIKE '%' + @ssID + '%'
and serialNo LIKE '%' + @serialNo + '%'
and category = @category
end
ПРИМЕЧАНИЕ: функция funcListToTableInt, анализирует разделенные запятыми значения, переданные (сам, если я возьму другие операторы where)
Приведенный выше поиск никогда ничего не возвращает, как я могу игнорировать значения, если они передаются черным, и запрашивать только те из них, которые содержат в себе что-то?тьфу, это убивает меня.