SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 17.12.2010 10:44:14

qazwsx100
Участник
Зарегистрирован: 06.09.2010
Сообщений: 8

Оптимизация запроса по ФИО(Очень долго выполняется)

Есть таблица на хостинге типа:
CREATE TABLE `GAI` (
  `ID` int(11) NOT NULL auto_increment,
  `GNUM` char(10) default NULL,
  `FIO` char(110) default NULL,
  `DATEB` char(20) default NULL,
  `ADRESS` text,
  `FDOC` char(50) default NULL,
  `OPR` varchar(100) default NULL,
  `DATEO` char(10) default NULL,
  `INF` text,
  PRIMARY KEY  (`ID`),
  KEY `gnum_ind` (`GNUM`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1180160;

Выполняю запрос: SELECT ID, FIO FROM GAI WHERE MATCH (FIO) AGAINST(' Иванов иван иванович' IN BOOLEAN MODE) LIMIT 0,52;
Выполняется за 30 сек при условии что паралельно ничего не выполняется.
Что мне можно сделать что б как нибудь побыстрее? Запрос как нибудь оптимизировать или саму таблицу?
Помогите пожалуйста.

Неактивен

 

#2 17.12.2010 15:30:20

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Оптимизация запроса по ФИО(Очень долго выполняется)

А полнотекстовый индекс добавить забыли? smile

ALTER TABLE GAI ADD FULLTEXT (FIO);

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson