Spec-Zone .ru
спецификации, руководства, описания, API

12.9. Full-Text Search Functions

12.9.1. Natural Language Full-Text Searches
12.9.2. Boolean Full-Text Searches
12.9.3. Full-Text Searches with Query Expansion
12.9.4. Full-Text Stopwords
12.9.5. Full-Text Restrictions
12.9.6. Fine-Tuning MySQL Full-Text Search
12.9.7. Adding a Collation for Full-Text Indexing

MATCH (col1,col2,...) AGAINST (expr [search_modifier])

search_modifier:  {       IN NATURAL LANGUAGE MODE     | IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION     | IN BOOLEAN MODE     | WITH QUERY EXPANSION  }

MySQL has support for full-text indexing and searching:

Full-text searching is performed using MATCH() ... AGAINST syntax. MATCH() takes a comma-separated list that names the columns to be searched. AGAINST takes a string to search for, and an optional modifier that indicates what type of search to perform. The search string must be a string value that is constant during query evaluation. This rules out, for example, a table column because that can differ for each row.

There are three types of full-text searches:

For information about FULLTEXT query performance, see Section 8.3.4, "Column Indexes".

For more technical details about processing for InnoDB FULLTEXT indexes, see Section 14.2.3.13.3, "FULLTEXT Indexes".

Constraints on full-text searching are listed in Section 12.9.5, "Full-Text Restrictions".

The myisam_ftdump utility dumps the contents of a MyISAM full-text index. This may be helpful for debugging full-text queries. See Section 4.6.2, "myisam_ftdump — Display Full-Text Index information".