В пълен текст всички небуквено-цифрови знаци се премахват в индексите и се заменят с празни места .Така че при вашето търсене, тъй като сте имали "." в низа търсите „уебсайт“ и „мрежа“.
Можете да коригирате това по 2 начина.
Трябва да имате отделна таблица или отделно поле, което съдържа пълнотекстови данни, отделени от оригиналната таблица, където запазвате оригиналните данни.
В таблицата с пълен текст можете да премахнете „. “ и магазин „websitenet ".
В такъв случай трябва да премахнете всички "." от низа за търсене, преди да направите заявката. Ако искате да направите заявка с ".", трябва да замените "." със символен низ - например "точка".
Така че в този случай ще съхраните „websitedotnet ".
Когато търсите този път, замествате всички "." с "точка" в заявката.
Добре, сега вашият случай с ново поле, където се съхранява колоната, която да се търси чрез FTS, така че:
ID DESCRIPTION DESCFTS
-----------------------------------------------------
1 this is a website. this is a websitedot
2 a website exists. a website existsdot
3 go to mywebsite.net go to mywebsitedotnet
4 go to mywebsite.net. go to mywebsitedotnetdot
тогава вашата заявка:
declare @search_client nvarchar(100) = 'website'
set @search_client = replace(@search_client, '.', 'dot')
select * from dbo.temp where contains ((DESCFTS), @search_client)