Какая польза от ключевого слова "\ +" при выполнении свободного текста в sql-сервере? - PullRequest
0 голосов
/ 02 октября 2019

Один из наших старших разработчиков использует "+" при выполнении поиска в свободном тексте. Я не могу понять, как его использовать.

Я пытался удалить условие, в котором он использовал ключевое слово "+", но здесь не было никаких изменений в результате.

declare @SearchText varchar(100) = 'jack banks'
set @SearchText = REPLACE(LTRIM(RTRIM(@SearchText)), ' ', ' and ')
DECLARE @sText  VARCHAR(50) = (CASE WHEN @searchText <> '' THEN '"' + @searchText + '*"' ELSE @searchText END)
DECLARE @FreeText VARCHAR(50) = (CASE WHEN @searchText <> '' THEN '"'+ @searchText +'\+"' ELSE @searchText END)
select @SearchText,@sText,@FreeText
select * from ServiceProvider as sp where 

Contains(*, @searchText) 
                OR 
                CONTAINS(SP.FirstName,@SText) 
                OR CONTAINS(SP.FirstName,@FreeText)
                OR CONTAINS(SP.LastName,@SText) OR CONTAINS(SP.LastName,@FreeText)

Перед удалением условия попытайтесь понять причину использования ключевого слова "/ +".

...