Sébastien.B
Sébastien.B

Reputation: 31

Cannot find my search "iso" in a word "TESTISOTEST" by using FREETEXTTABLE

First, i'm starting to implement a fulltext search on a table of 12 millions of rows. So maybe I have not yet understood all of its intricacies. :)

All those 12 millions of rows seem to indexed correctly and my index is correctly created with 1036 as LCID Language. I use the "SYSTEM" Stopwords list and this one seems to be empty. That's ok for me, for now.

Query used is like that :

DECLARE @Keywords nvarchar(2800)
SET @Keywords = 'iso'

SELECT FT.[Key], DS.Data, DS.DataTypeId
FROM DatasSearch_fr AS DS
INNER JOIN FREETEXTTABLE(DatasSearch_fr, (Data), ''' + @Keywords + ''', LANGUAGE 1036) AS FT  ON FT.[Key] = DS.Id
ORDER  BY DS.DataTypeId DESC

This query used in a SP returned all datas with "ISO" value or "TEST ISO TEST" value but not with "TESTISOTEST" or "ISOTEST"...

Maybe it's the correct operation of the full-text search with FREETEXTABLE. But i would like to know how returned this "TESTISOTEST" type of data. Maybe by using CONTAINSTABLE but it seems to me really not useful...

Thanks for your help, Regards, Sébastien

Upvotes: 0

Views: 100

Answers (1)

Thilo
Thilo

Reputation: 262834

Fulltext search depends on tokenizing the input text, usually this is done at word boundaries (for Western languages). So you cannot find arbitrary substrings, only words.

Upvotes: 0

Related Questions