Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

FREETEXTTABLE hat immer den Rang 0

Ich habe das gleiche Problem und aktuell akzeptierte Antwort ist für mich keine Lösung.

Ja, das Ranking wird wie in dieser Antwort angegeben erstellt, aber es ist keinesfalls ein Grund für inkonsistente Ergebnisse, wenn seit der letzten Neuerstellung des Katalogs einige Zeit vergangen ist. Das Ranking sollte sich bei der Neuerstellung nicht dramatisch ändern und noch weniger einige Minuten nach der Neuerstellung...

Für mich gibt es einen Fehler in freetexttable Rangfolge. (Fehler, der containstable nicht betrifft Ranking:Ich habe es selbst mit meinem eigenen Buggy-Katalog überprüft, und es ist auch auf dieser Microsoft-Forenbeitrag .)

Von dieser andere Beitrag im Microsoft-Forum Anscheinend tritt dieser Fehler nur in Katalogen auf, in denen nur sehr wenige Zeilen indiziert sind. Das Hinzufügen von Daten zum Katalog führt dazu, dass der Fehler verschwindet.

Hier ist also meine Antwort aus Pavel Valenta über einen weiteren Beitrag im Microsoft-Forum :

Wenn Ihr echter Katalog nicht mehr als ein paar Hundert Zeilen indiziert haben soll, fügen Sie Ihrem Katalog eine Dummy-Tabelle hinzu, damit mehr Zeilen indiziert werden.

Dadurch werden Ihre Ergebnisse aufgrund der Art und Weise, wie Abfragen erstellt werden, nicht verschmutzt. Ja, das scheint eine ziemlich seltsame Lösung zu sein. Aber das war der einzige, der das Problem für mich gelöst hatte.

Eine letzte Anmerkung:Ich hatte dieses Problem mit SQL 2005 SP4, nicht getestet mit 2008. (Die Frage bezieht sich auf 2008.)