My index is populated with 12 millions of rows from DatasSearch_fr table
Fields are :
[Id] [int] IDENTITY(1,1) NOT NULL,
[Data] [nvarchar](max) NOT NULL,
[DataId] [varchar](200) NOT NULL,
[DataTypeId] [int] NOT NULL
By using FREETEXTTABLE like this:
SELECT * FROM FREETEXTTABLE(DatasSearch_fr, (Data), 'din', LANGUAGE 1036) AS FT
Query returns 12 000 rows instantly
But by using FREETEXTTABLE like this:
SELECT DataId, DataTypeId, MAX(Rank) as Rank FROM DatasSearch_fr
INNER JOIN FREETEXTTABLE(DatasSearch_fr, (Data), 'din', LANGUAGE 1036) AS FT ON FT.[Key] = Id
Group By DataId, DataTypeId
Query returns 4400 rows in 10 or 15 seconds...
Problem for me is not 4400 rows returned, this point is logically dûe to Max(rank)
and Group by
...But the 10 or 15 seconds seem very too much and this slowest response time is not always case with all keywords searched.
Do you know a way to improve this response time ?
Thanks for your help, Sébastien
By using
I have this result:
If someone have an idea. :)
EDIT: Below, Query Execution Plan