ホームページ  >  記事  >  データベース  >  MySQLのFULLTEXTを利用した全文検索を実装する際の注意点

MySQLのFULLTEXTを利用した全文検索を実装する際の注意点

小云云
小云云オリジナル
2017-12-13 14:38:111764ブラウズ

英語の場合、MySQL の FULLTEXT 属性は全文検索を実装するのに非常に便利で効率的ですが、使用する際に注意しなければならないことがいくつかあります。実際、エディターは中国語をサポートしていませんが、注意する必要があることがいくつかあります。

まず、取得する必要があるフィールドに FULLTEXT 属性を追加します (テーブルが作成されていると仮定します):

alter table table_name add fulltext index(filed_1,filed_2);

次に、データをクエリします:

 SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST ('keyword');

ここには非常に重要な注意事項が含まれています:

MySQL はフルテキストを規定しています検索 検索された単語が存在する行数が検索された全行数の半分以上の場合、検索された単語は一般的な単語として扱われ、表示されません。 (具体的な条件は情報を見て判断する必要があります)

したがって、テスト中にテーブルにデータが 1 行しかないと仮定すると、上記のクエリ ステートメントがどのように実行されても、返される結果は常に空の。パニックにならないでください。検索するキーワードを含まないデータをさらにいくつか追加すると、結果が得られます~

もちろん、MySQL はクエリ結果のより強力なフィルタリングを提供します:

 SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST (' keyword_1 -keyword_2' IN BOOLEAN MODE);

このようにして、keyword_1 を含むデータが返されます。そして、keyword_2 を含むデータが返されます。データはフィルターで除外されます。

関連する推奨事項:

mysql 全文検索 中国語のソリューションとサンプル コードの共有

PHP+MYSQL 全文検索と全文検索ツール

SQL Server 全文検索の概要_PHP チュートリアル

以上がMySQLのFULLTEXTを利用した全文検索を実装する際の注意点の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。