Spec-Zone .ru
спецификации, руководства, описания, API
|
Full-text searches are supported for InnoDB
and MyISAM
tables only. FULLTEXT
index support
for InnoDB
tables requires MySQL 5.6.4 or higher.
Full-text searches are not supported for partitioned tables. See Section 18.6, "Restrictions and Limitations on Partitioning".
Full-text searches can be used with most multi-byte character sets. The exception
is that for Unicode, the utf8
character set can be used, but not the ucs2
character set. Although FULLTEXT
indexes on ucs2
columns cannot be used, you can perform IN BOOLEAN MODE
searches on a ucs2
column
that has no such index.
The remarks for utf8
also apply to utf8mb4
,
and the remarks for ucs2
also apply to utf16
, utf16le
, and utf32
.
Ideographic languages such as Chinese and Japanese do not have word delimiters.
Therefore, the FULLTEXT
parser 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 FULLTEXT
index must use the same character set and collation.
The MATCH()
column list must match exactly the column list in some FULLTEXT
index
definition for the table, unless this MATCH()
is IN BOOLEAN MODE
on a MyISAM
table. For MyISAM
tables,
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 FULLTEXT
searches
than for non-FULLTEXT
searches. See Section
13.2.9.3, "Index Hint Syntax".