1

OBS:全文検索と MyIsam エンジンは初めてなので、基本的に何も知らないと思います。

ここに私のDDLがあります:

CREATE TABLE NotebookIndex (
    indexAutomatico TEXT,
    indexHumano TEXT,
    notebook BIGINT UNSIGNED
) CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE=MYISAM;
ALTER TABLE NotebookIndex ADD FULLTEXT(indexAutomatico, indexHumano);

そして、ここに私のデータベースがあります:

ここに画像の説明を入力

クエリを実行すると:

SELECT notebook FROM NotebookIndex WHERE MATCH(indexHumano, indexAutomatico) AGAINST ('intel')

私はこれを得ています:

ここに画像の説明を入力

印刷画面をよく見ると'intel'、いくつかの行に存在することがわかります。

ただし、に変更'intel'すると'sony'、いくつかの結果が得られます。他の(存在する)単語をいくつか試しましたが、どちらも機能しません。なぜこうなった?

4

1 に答える 1

3

その単語が行の 50% を超えて存在する場合、通常の全文検索では無視されます。テーブルの 50% を超える結果が必要な場合は、BOOLEAN MODEを選択します。

于 2013-04-22T23:21:05.900 に答える