







|
MySQL.RU - Webboard
Вернуться
Подскажите с оптимизацией запроса, выполняюще (Серега) 28/07/2007 - 17:15:55
Re: Подскажите с оптимизацией запроса, выполняюще (Серега) 28/07/2007 - 17:21:15
Re: Подскажите с оптимизацией запроса, выполняюще (xeim) 29/07/2007 - 16:08:11
> Original message text:
> From: Серега - 28/07/2007 - 17:15:55
> Subject:Подскажите с оптимизацией запроса, выполняюще
> -----------------
> есть таблицы db_tovar и db_menu_tovar, есть и там и там поля `barcod`, нужно из таблицы db_tovar выбрать все `barcod` которых нет в таблице db_menu_tovar
> делаю вот такой запрос
> SELECT `tovar`.barcod FROM `tovar` LEFT JOIN `menu_tovar` ON `tovar`.barcod = `menu_tovar`.barcod WHERE `menu_tovar`.barcod is NULL
> получаеться как в анекдоте "база данных сказала - ну у вас и запросы, и повисла", только в моем случае она без всяких обьяснений виснет и все... %)
>
From: xeim - 29/07/2007 - 16:08:11
Subject:Подскажите с оптимизацией запроса, выполняюще
-----------------
Что значит "виснет и всё"? Поподробнее...
Выдается какое-то сообщение об ошибке, если да, то какое?
Mysql сервер вылетает, если да, то остается что-нибудь в логах? Возможно повреждены таблицы. Попробуйте проверить их:
CHECK TABLE `tovar`;
CHECK TABLE `menu_tovar`;
Запрос выполняется но вы ни разу не дождались результатов его выполнения? Проверить можно так:
SHOW PROCESSLIST;
Если да, то изучайте план выполнения запроса:
EXPLAIN
SELECT `tovar`.`barcod`
FROM `tovar` LEFT JOIN `menu_tovar` USING(`barcod`)
WHERE `menu_tovar`.`barcod` is NULL
Убедитесь что по полю barcod в обоих таблицах создан уникальный индекс. Штрих-код же уникален?
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
31954
|
|