Spec-Zone .ru
спецификации, руководства, описания, API
|
Полнотекстовые поискы поддерживаются для InnoDB
и MyISAM
таблицы только. FULLTEXT
индексируйте
поддержку InnoDB
таблицы требуют MySQL 5.6.4 или выше.
Полнотекстовые поискы не поддерживаются для разделенных таблиц. См. Раздел 18.6, "Ограничения и Ограничения на Разделение".
Полнотекстовые поискы могут использоваться с большинством многобайтовых наборов
символов. Исключение то, что для Unicode, utf8
набор символов может
использоваться, но не ucs2
набор символов. Хотя FULLTEXT
индексирует на ucs2
столбцы не могут использоваться, можно выполнить IN BOOLEAN MODE
поискы на a ucs2
столбец, у
которого есть не такой индексировать.
Комментарии для utf8
также применитесь к utf8mb4
, и комментарии для ucs2
также
применитесь к utf16
, utf16le
, и utf32
.
У идеографических языков, таких как китайский и японский язык нет разделителей
слова. Поэтому, FULLTEXT
синтаксический анализатор не может определить, где слова начинаются и заканчиваются на этих и других
таких языках. Импликации этого и некоторых обходных решений для проблемы описываются в
Разделе
12.9, "Полнотекстовые Функции Поиска".
Хотя использование многократных наборов символов в пределах единственной таблицы
поддерживается, все столбцы в a FULLTEXT
индексируйте должен использовать
тот же самый набор символов и сопоставление.
MATCH()
список столбцов должен соответствовать точно список столбцов в
некоторых FULLTEXT
не индексируйте определение для таблицы, если это MATCH()
IN BOOLEAN MODE
на a MyISAM
таблица. Для
MyISAM
таблицы, поискы булева режима могут быть сделаны на
неиндексированных столбцах, хотя они, вероятно, будут медленными.
Параметр AGAINST()
должно быть строковое значение,
которое является постоянным во время оценки запроса. Это исключает, например, столбец таблицы, потому
что это может отличаться для каждой строки.
Индексируйте подсказки, более ограничиваются для FULLTEXT
поискы чем для не -FULLTEXT
поискы. См.
Раздел 13.2.9.3,
"Индексируйте Синтаксис Подсказки".