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

Форум MySQL

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

 

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

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

тема: Скорость выполнения запросов
 
 автор: SoloNifer   (02.09.2006 в 19:59)   письмо автору
 
 

Народ, помогите плз!

Есть база данных с таблицами типа id, band, song, text где

band - Имя группы
song - Название песни
text - Текст песни

Нужно осуществить поиск по band и song такого типа:
SELECT * FROM `base` WHERE 1 AND `band` LIKE '%$query%'
UNION
SELECT * FROM `base` WHERE 1 AND `song` LIKE '%$query%'


Дело в том что данных в таблице немеренно и запрос выполняеться очень долго.

Пробовал индексировать, но на LIKE это не распространяеться (или я чего-то не понял)

Что делают в данном случае???

   
 
 автор: Евгений Петров   (02.09.2006 в 20:05)   письмо автору
 
   для: SoloNifer   (02.09.2006 в 19:59)
 

Можно восользоваться полнотекстовый поиском http://softtime.ru/forum/read.php?id_forum=3&id_theme=18018&page=1

   
 
 автор: SoloNifer   (02.09.2006 в 20:27)   письмо автору
 
   для: Евгений Петров   (02.09.2006 в 20:05)
 

Я так понимаю таблица должна быть MyISAM, чтоб она поддерживала FULLTEXT?

Хотя и так она у меня не поддерживает FULLTEXT

Может, кто структуру таблицы написать?

   
 
 автор: cheops   (02.09.2006 в 22:25)   письмо автору
 
   для: SoloNifer   (02.09.2006 в 20:27)
 

Да, следует использовать таблицу MyISAM. Таблица может выглядеть например так
CREATE TABLE `posts` (
  `id_post` int(11) NOT NULL auto_increment,
  `name` text NOT NULL,
  `url` tinytext NOT NULL,
  `putfile` tinytext NOT NULL,
  `author` tinytext NOT NULL,
  `id_author` int(6) NOT NULL default '0',
  `hide` enum('show','hide','lock') NOT NULL default 'show',
  `time` datetime NOT NULL default '0000-00-00 00:00:00',
  `parent_post` int(11) NOT NULL default '0',
  `id_theme` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id_post`),
  FULLTEXT KEY `search` (`name`,`author`)
) TYPE=MyISAM AUTO_INCREMENT=132055 ;

В чём у вас выражается не поддержка индекса FULLTEXT?

   
Rambler's Top100
вверх

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