2012-02-23 31 views
0

怒鳴る問い合わせ:MySQLの全文検索の関連性

select tag, MATCH(t.tag) AGAINST ('cartofi copti la cuptor') as relevance 
FROM tags t 
WHERE MATCH(t.tag) AGAINST ('cartofi copti la cuptor') 

結果は次のとおりです。3)4の前にある理由

1) Cartofi la cuptor cartofi copti la cuptor - 8.298574447631836 
2) Cartofi copti - 6.979184150695801 
3) Ardei copti umpluti cu branza snitel de ardei copti - 6.61628532409668 
4) Cartofi la cuptor cu sos de carne cartofi cu pui la cuptor - 5.385213851928711 

私の質問ですか)? 4)は2つの一致キーワードを含み、3)は1つのキーワードのみを含む。

t.tagフィールドはフルテキストインデックスを持つテキストフィールドです。テーブルエンジンはもちろんMyIsamです。

MySQLバージョンは、たぶん、あなたはあなたのインデックスを再構築しようとする必要があります5.5.20-ログ

+0

あなたのDB行に3番目と4番目があるので、それはありませんか? –

+0

あなたはテーブルの行の位置が重要であると言っていますか? – keepwalking

+0

多分....あなたは何を言う? –

答えて

0

です。

+0

私の知る限り、mysqlのマッチは大文字と小文字を区別しないので、大文字は問題ではありません(テスト済みと未テスト、関連性の値は同じです)。 – keepwalking

+0

@keepwalkingどちらのケースも2つのキーワードを持っています。あなたは見ましたか? – Kayser

+0

また、4)には4つのキーワードが含まれています。 2 cuptorと2 cartofi – keepwalking

関連する問題