Пусть имеется таблица members, содержащая имена (name), электронные адреса (email) и домашние странички (url) членов виртуального клуба. При этом поле name является обязательным, а поля email и url - опциональными и, в случае отсутствия у посетителя email или url, принимающими значения NULL. Оператор CREATE, создающий данную таблицу, представлен в листинге 8.54.
Полнотекстовый поиск в СУБД MySQL не чувствителен к регистру. Кроме того, при поиске игнорируются так называемые "общеупотребительные" слова. К ним относятся слишком короткие слова (по умолчанию состоящие меньше, чем из четырех символов), а также слова, встречающиеся, по крайней мере, в половине записей. Так если в таблице имеются только две записи, то поиск не даст результатов, поскольку каждое слово будет присутствовать в половине записей.
Для использования возможности полнотекстового поиска в таблице, содержащей текстовые поля, необходимо создать индексы FULLTEXT. Изменить уже существующие таблицы можно при помощи SQL-оператора ALTER. В листинге 8.57 для текстового поля name таблицы tbi создается индекс FULLTEXT.
Начиная с версии 4.0.1, СУБД MySQL поддерживает поиск в так называемом логическом режиме, позволяющем задать обязательное отсутствие слова в результатах запроса, изменять величину релевантности для отдельных слов и многое другое. За более подробной информацией следует обратиться к официальному справочному руководству по СУБД MySQL.