Mysql全文搜索match against的用法
全文检索在 MySQL 中就是一个 FULLTEXT 类型索引。FULLTEXT 索引用于 MyISAM 表,可以在 CREATE TABLE 时或之后使用 ALTER TABLE 或 CREATE INDEX 在 CHAR、 VARCHAR 或 TEXT 列上创建
对于大的数据库,将数据装载到一个没有 FULLTEXT 索引的表中,然后再使用 ALTER TABLE (或 CREATE INDEX) 创建索引,这将是非常快的。将数据装载到一个已经有 FULLTEXT 索引的表中,将是非常慢的。1.使用Mysql全文检索fulltext的先决条件
表的类型必须是MyISAM
建立全文检索的字段类型必须是char,varchar,text
2.建立全文检索先期配置
由于Mysql的默认配置是索引的词的长度是4,所以要支持中文单字的话,首先更改这个.
*Unix用户要修改my.cnf,一般此文件在/etc/my.cnf,如果没有找到,先查找一下find / -name 'my.cnf'
在 [mysqld] 位置内加入:
ft_min_word_len = 2
其它属性还有
ft_wordlist_charset = gbk
ft_wordlist_file = /home/soft/mysql/share/mysql/wordlist-gbk.txt
ft_stopword_file = /home/soft/mysql/share/mysql/stopwords-gbk.txt
稍微解释一下:
ft_wordlist_charset 表示词典的字符集, 目前支持良好的有(UTF-8, gbk, gb2312, big5)
ft_wordlist_file 是词表文件, 每行包括一个词及其词频(用若干制表符或空格分开,消岐专用)
ft_stopword_file 表示过滤掉不索引的词表, 一行一个.
ft_min_word_len 加入索引的词的最小长度, 缺省是 4, 为了支持中文单字故改为 2
3.建立全文检索
在建表中用FullText关键字标识字段,已存在的表用 ALTER TABLE (或 CREATE INDEX) 创建索引
CREATE fulltext INDEX index_name ON table_name(colum_name);
4.使用全文检索
在SELECT的WHERE字句中用MATCH函数,索引的关键词用AGAINST标识,IN BOOLEAN MODE是只有含有关键字就行,不用在乎位置,是不是起启位置.
SELECT * FROM articles WHERE MATCH (tags) AGAINST ('旅游' IN BOOLEAN MODE);
5.详细的说明请参数Mysql官方网站
这是Mysql 5.1的,不过4.X也可以做为参考,基本一置.我用的就是Mysql 4.1.
MySQL全文索引与中文分词总结及一般的关键词搜索流程
mysql 全文检索 中文分词
支持中文的MySQL 5.1+ 全文检索分词插件
家用一下搜索引擎就会发现,分词的情况只是出现在当整词命中为0的情况下。
而具体怎样分词,大家可以参考一下baidu搜索试验结果:
·如果搜“徐祖宁宁”,结果为“徐祖”+“宁宁”。(搜人名的情况下,它可能有一个百家姓词典,自动将姓后第一个字归前)
·搜“徐宁愿”,结果为“徐宁愿”。(说明“宁愿”归“徐”所有。同上。因为徐是姓。)
·搜“徐祖宁愿”,结果为“徐祖”+“宁愿”。(因为“宁愿”是词,故“徐”只带“祖”。)
·搜“徐祖宁高”,结果为“徐祖宁”。(因为“宁高”不是关键字,所以“宁”归前词所有。而“高”可能因为是单字,为提高前词搜索效率故被省略。)

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









全文検索に PHP 拡張機能 Sphinx を使用する方法 全文検索は、最新の Web アプリケーションにおける一般的な要件の 1 つです。ユーザーの効率的なクエリとデータの取得を満たすために、強力なオープンソース検索エンジンである Sphinx を使用して全文検索機能を実装できます。 Sphinx は C++ で書かれており、PHP プロジェクトでの使用を容易にする PHP 拡張機能を提供します。この記事では、PHP拡張機能Sphinxを使って全文検索を行う方法を紹介します。

全文検索とインデックス付け戦略に PHP と SQLite を使用する方法 はじめに: 最新のアプリケーション開発では、多くの分野で全文検索機能が不可欠です。ブログ、ニュース Web サイト、電子商取引プラットフォームのいずれにおいても、ユーザーはキーワードを使用して検索することに慣れています。したがって、ユーザー エクスペリエンスを向上させ、より良い検索結果を提供するには、適切な検索およびインデックス付け戦略を使用して全文検索機能を提供する必要があります。この記事では、PHP および SQLite データベースを使用して全文検索を実装する方法を検討します。

最新の Web アプリケーション開発では、全文検索機能が不可欠な部分になっています。 Web アプリケーションの開発に広く使用されている言語として、PHP は当然ながら、全文検索をサポートするいくつかの強力なライブラリを提供します。この記事では、PHP を使用して全文検索機能を実装する方法を詳しく説明し、情報検索を容易にするためのヒントをいくつか紹介します。 1. 全文検索とは何ですか?全文検索とは、ドキュメント内のキーワードまたは語句を取得する機能を指します。従来の検索エンジンは通常、単純に

MongoDB を使用してデータの全文検索機能を実装する方法 はじめに: 情報化時代の急速な発展に伴い、全文検索機能は多くのアプリケーションに必要な機能になりました。 MongoDB は、人気のある NoSQL データベースとして、強力な全文検索機能も提供します。この記事では、MongoDB を使用してデータの全文検索機能を実装する方法と、関連するコード例を紹介します。 1. MongoDB の全文検索機能の概要 MongoDB の全文検索機能は、MongoDB のテキスト検索機能をベースにしています。

情報化時代の継続的な発展に伴い、人々は情報を入手するためにますますインターネットに依存するようになりました。情報共有プラットフォームの 1 つとして、Web 検索エンジンも常に進化し、改善されています。この記事では、PHP 7.0 で全文検索エンジンを実装する方法を紹介し、読者が PHP テクノロジを有効に活用して効率的な検索エンジンを迅速に構築できるようにします。 1. 全文検索エンジンの概要 全文検索では、キーワードまたは語句を使用してドキュメント全体を検索し、最も一致する結果を見つけます。全文検索エンジンは、アルゴリズムを使用してドキュメントにインデックスを付け、検索を高速化します。存在する

PHP を使用して全文検索およびキーワード抽出機能を実装する方法 全文検索およびキーワード抽出は、最新の Web サイトやアプリケーションで一般的な機能であり、ユーザーに優れた検索エクスペリエンスと関連性のある推奨事項を提供できます。 PHP では、全文インデックス作成とキーワード抽出テクノロジを使用して、これらの機能を実現できます。この記事では、PHP を使用して全文検索およびキーワード抽出機能を実装する方法と、対応するコード例を紹介します。全文検索機能の実装 全文検索とは、テキスト内容の中から指定したキーワードを含むレコードを検索することです。存在する

Solr は、全文検索の実装に使用できる Lucene ベースの検索エンジンです。全文検索に PHP で Solr を使用すると、キーワードを通じて関連データを迅速にクエリし、検索結果の精度と信頼性を向上させることができます。この記事では、PHP で Solr を使用して全文検索を行う方法を紹介します。 1. Solr のインストールと構成 まず、Solr と PHP の Solr 拡張機能をサーバーにインストールする必要があります。 Solr のインストール手順については、Solr の公式ドキュメントを参照してください。

Sphinx を使用して全文検索を実装するための PHP アプリケーション ガイドの紹介: 最新の Web アプリケーションでは、全文検索機能が不可欠な機能になっています。ユーザーはキーワードを入力して必要なコンテンツを検索して一致させることが多いためです。効率的かつ正確な検索結果を提供するには、強力な検索エンジンが必要です。オープンソースの全文検索エンジンとして、Sphinx は PHP に最適な検索ソリューションを提供します。この記事ではSphinxを使って実装する方法を紹介します。
