Я использую SQL Server 2008 Express, и у меня есть хранимая процедура, которая выполняет SELECT
из таблицы на основе параметров. У меня есть параметры nvarchar
и параметры int
.
Вот моя проблема, мое предложение where выглядит так:
WHERE [companies_SimpleList].[Description] Like @What
AND companies_SimpleList.Keywords Like @Keywords
AND companies_SimpleList.FullAdress Like @Where
AND companies_SimpleList.ActivityId = @ActivityId
AND companies_SimpleList.DepartementId = @DepartementId
AND companies_SimpleList.CityId = @CityId
Эти параметры являются значениями фильтра, установленными пользователем моего приложения ASP.NET MVC 3, а параметры int
могут быть не установлены, поэтому их значение будет равно 0. Это моя проблема, хранимая процедура будет искать элементы, которые иметь 0
как CityId
, например, и для этого он возвращает неверный результат. Так что было бы неплохо иметь динамическое предложение where, основанное на том, больше ли значение параметра int, чем 0, или нет.
Заранее спасибо