Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Можно ли ускорить поиск в тексте?
 
 автор: Владимир55   (07.12.2012 в 15:39)   письмо автору
 
 

Выполняется запрос:
SELECT * FROM kattov WHERE name_tov LIKE '%$name_tov%'


Можно ли что-то предпринять для ускорения его выполнения?

================
В таблице создано UNIQUE:
ALTER TABLE kattov ADD UNIQUE (producer, artikul, name_tov)

  Ответить  
 
 автор: Valick   (07.12.2012 в 15:40)   письмо автору
 
   для: Владимир55   (07.12.2012 в 15:39)
 

а относительно содержания поля name_tov можно поинтересоваться, что там за данные и в каком виде?

  Ответить  
 
 автор: Владимир55   (07.12.2012 в 16:23)   письмо автору
 
   для: Valick   (07.12.2012 в 15:40)
 

А там чего ни попадя - буквы, цифры, знаки. Только кавычки я запретил, а все остальное пользователю доступно.

Поле VARCHAR (200) CHARACTER SET utf8

  Ответить  
 
 автор: cheops   (07.12.2012 в 21:55)   письмо автору
 
   для: Владимир55   (07.12.2012 в 15:39)
 

LIKE почти невозможно ускорить, особенно, если нельзя убрать первый %. Лучше посмотреть в сторону полнотекстового поиска, встроенного в MySQL или собственную реализацию этого алгоритма.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования