Страницы

Поиск по вопросам

четверг, 14 февраля 2019 г.

Не работает LIKE в SQL-запросе

Есть DropDownlist c отступом:
Все XXX XXX XXX XXX XXX
Запрос:
declare @name nvarchar(100) = ' XXX' begin SET NOCOUNT ON; SELECT [id] ,[name] FROM dbo.test where (@name = 'Все' or name Like '%'+@name+'%') end
В таблице есть строка XXX без отступа. В параметр @name передается значении с пробелами(к примеру ' XXX', ' XXX') Как сделать чтобы оператор like работал?


Ответ

Если проблема в пробеле - то проще всего его обрезать:
declare @name nvarchar(100) = ' XXX' begin SET NOCOUNT ON; SELECT [id] ,[name] FROM dbo.test where (@name = 'Все' or name Like '%'+RTRIM(LTRIM(@name))+'%') end

Комментариев нет:

Отправить комментарий