Full-text searches are supported for
MyISAM
tables only.
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. However, 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
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 11.8, “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
. Boolean-mode searches
can be done on nonindexed columns, although they are likely
to be slow.
The argument to AGAINST()
must be a
constant string.
Index hints are more limited for FULLTEXT
searches than for non-FULLTEXT
searches.
See Section 12.2.9.2, “Index Hint Syntax”.
User Comments
Indexed columns must <= 1000 byte encoding.
There is also a limitation of at most one other field match, i.e.
SELECT * FROM table WHERE MATCH (fieldlist) AGAINST ('cows horses') AND ( field2= '5286');
Add your own comment.