Full-text searches are supported for
MyISAMtables only. (In MySQL 5.6 and up, they can also be used with
Full-text searches are not supported for partitioned tables. See Section 19.5, “Restrictions and Limitations on Partitioning”.
Full-text searches can be used with most multibyte character sets. The exception is that for Unicode, the
utf8character set can be used, but not the
ucs2character set. However, although
ucs2columns cannot be used, you can perform
IN BOOLEAN MODEsearches on a
ucs2column that has no such index.
The remarks for
utf8also apply to
utf8mb4, and the remarks for
ucs2also apply to
Ideographic languages such as Chinese and Japanese do not have word delimiters. Therefore, the
FULLTEXTparser cannot determine where words begin and end in these and other such languages. The implications of this and some workarounds for the problem are described in Section 12.9, “Full-Text Search Functions”.
Although the use of multiple character sets within a single table is supported, all columns in a
FULLTEXTindex must use the same character set and collation.
MATCH()column list must match exactly the column list in some
FULLTEXTindex definition for the table, unless this
IN BOOLEAN MODE. Boolean-mode searches can be done on nonindexed columns, although they are likely to be slow.
The argument to
AGAINST()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.
Index hints are more limited for
FULLTEXTsearches than for non-
FULLTEXTsearches. See Section 8.9.3, “Index Hints”.
The '%' character is not a supported wildcard character for full-text searches.