Я хочу выполнить полнотекстовый поиск в своей сети. Мне нужен поиск с разбивкой на страницы. в моей базе данных более 50000 строк на таблицу. Я изменил свою таблицу и сделал (заголовок, содержание, дата)
индексом. таблица всегда обновляется, там еще есть столбец id
, который автоматически увеличивается. и самая последняя дата
всегда находится в конце таблицы.
date varchar(10)
title text
content text
но все время запроса будет стоить 1,5+ секунды
. Я ищу в Google множество статей, некоторые писали, что только ограничение длины слова в поле Индекс
может ускорить поиск. но как текст
тип, он не может
изменить определенную длину таким образом (я пробовал ALTER TABLE table_1 CHANGE
title title
TEXT (500) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL
, не работает)
date varchar(10)
title text(500)
content text(1000)
так, Кроме Sphinx
и скрипта третьей части. как оптимизировать полнотекстовый поиск только с помощью sql? код запроса здесь:
(SELECT
title,content,date
FROM table_1
WHERE MATCH (title,content,date)
AGAINST ('+$Search' IN BOOLEAN MODE))
UNION
(SELECT
title,content,date
FROM table_2
WHERE MATCH (title,content,date)
AGAINST ('+$Search' IN BOOLEAN MODE))
Order By date DESC
Спасибо.