Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Поиск в MYSQL 4.1 и 5.0 (Евгений) 06/02/2004 - 08:01:26
      Re: Поиск в MYSQL 4.1 и 5.0 (alliancce) 06/02/2004 - 10:40:22
      Re: я в лыжах на асфальте? (Alec) 06/02/2004 - 11:01:00
      Re: я в лыжах на асфальте? (AlexKab) 06/02/2004 - 12:15:45
      Re: а может....(+) (Alec) 06/02/2004 - 12:19:07
      Re: а может....(+) (alliancce) 09/02/2004 - 10:17:01
      Re: Объясните, почему так получается? (john) 15/11/2005 - 21:05:24

> Original message text:
> From: Евгений - 06/02/2004 - 08:01:26
> Subject:Поиск в MYSQL 4.1 и 5.0
> -----------------
> Уважаемый ALL!
> Подскажите, пож-та.
> Столкнулся с такой ситуацией в MYSQL 4.1 и 5.0.
>
> 1) Создаю простую таблицу из одного реквизита FAM CHAR(128);
> 2) Записываю туда слово 'СИДОРОВ';
> 3) Подаю запрос: SELECT * FROM NAMETABLE WHERE FAM LIKE '%ИДО%' и
> получаю ответ СИДОРОВ;
> 4) Подаю запрос: SELECT * FROM NAMETABLE WHERE FAM LIKE '%ИДОРО%' и
> в результате ничего.
>
> Что характерно, в версиях MYSQL 4.0 работает все прекрасно
> Если в данной ситуации использовать тип реквизита FAM не CHAR, а
> BLOB - работает.
>
> Может быть кто сталкивался с подобными проблемами?
> Подскажите, в чем дело?
>
> С уважением, Евгений.
>


From: john - 15/11/2005 - 21:05:24
Subject:Объясните, почему так получается?
-----------------
Есть две таблицы:
CREATE TABLE `ftps` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
`pid` mediumint(8) unsigned NOT NULL default '0',
`data` varchar(100) NOT NULL default '',
`size` mediumint(8) unsigned NOT NULL default '0',
`date` date NOT NULL default '0000-00-00',
`ext` smallint(5) NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `size` (`size`),
KEY `ext` (`ext`),
FULLTEXT KEY `data` (`data`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251

и

CREATE TABLE `ext` (
`id` smallint(5) unsigned NOT NULL auto_increment,
`ext` char(4) NOT NULL default '',
PRIMARY KEY (`id`),
UNIQUE KEY `ext` (`ext`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251

В ftps.data лежат имена файлов, в ftps.id id расширения файла,
и соотвественно таблица ext для самих расширений.

Странно то, что 2ой запрос выполняется медленее, хотя по идеи должен быстрее, видь выборка не полная база, а только записи с расширением таким то. Или при моем 2ом запросе все равно все записи просмотриваются? Если убрать limit ситуация не меняется.

SELECT data FROM ftps WHERE data LIKE '%madonna%' limit 50;
---
50 rows in set (0.58 sec)

explain SELECT data FROM ftps WHERE data LIKE '%madonna%' limit 50;
+----+-------------+-------+------+---------------+------+---------+------+---------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+---------+-------------+
| 1 | SIMPLE | ftps | ALL | NULL | NULL | NULL | NULL | 2799837 | Using where |
+----+-------------+-------+------+---------------+------+---------+------+---------+-------------+

2ой запрос:
SELECT data FROM ftps WHERE ext = 5 and data LIKE '%madonna%' limit 50;
---
50 rows in set (0.92 sec)

+----+-------------+-------+------+---------------+------+---------+-------+--------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+-------+--------+-------------+
| 1 | SIMPLE | ftps | ref | ext | ext | 2 | const | 218596 | Using where |
+----+-------------+-------+------+---------------+------+---------+-------+--------+-------------+



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
25114



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |