0

実行中のクエリに問題があります。基本的には、本のテーブルでの検索です。以下のクエリは、FREETEXTTABLEコマンドを使用して著者の検索をランク付けします。

@author = 'lewis c s'

SELECT *
FROM tbl_products
INNER JOIN FREETEXTTABLE(tbl_products, [author], @author, LANGUAGE 'British English') AS key_tbl ON tbl_products.product_id = key_tbl.[key]
WHERE deleted = 0
ORDER BY key_tbl.[rank] DESC, author ASC, title ASC, stl_product_id ASC

私が得た結果は紛らわしいです...返された一番上の行は、この下lewis lewislewis c sランク付けされた著者によるものです!

を編集しnoiseENG.txt、1 文字を削除してフルテキスト カタログを再構築しましたが、結果に変化は見られません。リストに追加したので、このファイルの変更が機能していることはわかっており、作成者の列でlewisすべての検索が除外されています。lewis

注: 「c s」だけを検索しても結果が得られないため、1 文字がすべて無視されているようです。また、索引付けされたフィールドはすべて に設定されBritish Englishます。

FREETEXTTABLEコマンドがまだ単一の文字を除外している理由を誰かが知っていますか?

4

1 に答える 1

0

フレーズ検索を試してみてください。

@author = '"lewis c s"'
于 2011-04-27T15:58:59.157 に答える