Помогите, долго обрабатывается SQL запрос

T
На сайте с 28.06.2007
Offline
82
3447

Есть база MySQL объёмом 741Мб.

Делаю запрос в phpMyAdmin (Денвер) вида:

SELECT * 

FROM `tablica`
WHERE (
(
a1 LIKE 'Ford%'
)
AND (
a2 LIKE 'наконечник%'
)
)
LIMIT 0 , 30

Этот запрос обрабатывается больше 5ти минут, собственно он так и не обработался, дальше ждать я не стал :(.

Есть ещё одна таблица объёмом 10Мб в ней подобные запросы выполняются быстро.

В чём может быть проблема?

У вас так же долго запросы обрабатываются если большая база?

[Удален]
#1

добавь индекс по двум полям a1,a2. только добавляй НЕ ДВА ИНДЕКСА, а ДВОЙНОЙ ИНДЕКС

Dreammaker
На сайте с 20.04.2006
Offline
569
#2

кроме того, если запрос всегда в таком виде (ищется соотвествие началу строк), то есть смысл указать в индексе длину индекса для полей в 5-10 символов.

T
На сайте с 28.06.2007
Offline
82
#3
bearman:
добавь индекс по двум полям a1,a2. только добавляй НЕ ДВА ИНДЕКСА, а ДВОЙНОЙ ИНДЕКС

Спасибо огромное, почитал про индекс наверное гораздо меньше времени будет уходить на поиск :).

Только не пойму как сделать двойной мндекс. В phpmyadmin в структуре таблицы у каждого поля есть действие. Там есть индекс. Если я сделаю индекс для поля a1 и поля a2 (через действия) это будет считаться двойным индексом?

Dreammaker, спасибо, но запросы могут быть и такого вида: %W124% для а1 и %шрус% для а2. Тогда этот вариант не подойдёт.

HraKK
На сайте с 02.03.2009
Offline
128
#4

Trol, там снизу есть создать индекс на [ 2 ] колонках

я гарант (/ru/forum/493343) уже не оказываю данные услуги, извините.
T
На сайте с 28.06.2007
Offline
82
#5
HraKK:
Trol, там снизу есть создать индекс на [ 2 ] колонках

Спасибо огромное! :)

Пойду делать индекс :)

Всем ещё раз спасибо за быструю помощь!

Dreammaker
На сайте с 20.04.2006
Offline
569
#6
Trol:
%W124% для а1 и %шрус% для а2.

для таких запросов индекс вообще не будет использоваться, если в последних версиях ничего не поменялось.

[Удален]
#7

В таблицах MyISAM еще есть FULLTEXT индексы. Грех ими не воспользоваться для таких задач

А вообще для таких объемов грех не сделать свою индексную таблицу поиска, хотя на подобие searchindex в mediawiki

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий