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




MySQL.RU - Webboard



Вернуться
Почему не используются индексы (Bod2000) 15/01/2003 - 19:28:55
      Re: Почему не используются индексы (Dinky) 16/01/2003 - 19:55:21
      Re: Почему не используются индексы (Bod) 17/01/2003 - 14:31:47
      Re: Почему не используются индексы (Dinky) 17/01/2003 - 20:00:56
      Re: Почему не используются индексы (vi.k) 19/01/2003 - 13:08:39
      Re: Почему не используются индексы (Bod2000) 20/01/2003 - 13:41:22
      Re: Почему не используются индексы (vi.k) 20/01/2003 - 15:50:23
      Re: Почему не используются индексы (Dinky) 20/01/2003 - 17:59:03

> Original message text:
> From: Bod2000 - 15/01/2003 - 19:28:55
> Subject:Почему не используются индексы
> -----------------
> Hi All!
> Возникла интересная ситуация - оптимизатор не использует индексы.
>
> Имеем:
> - MySQL 3.23.51
> 2 таблицы A и B
> Запрос:
> надо получить список покупателей (табл. А) которые делали заказы (табл. B) у магазина или если у них выставлен признак A.Поле2
> select A.поле1
> from A,B
> where (A.Поле1=B.Поле1 and B.Поле2=Значение) or (A.Поле2=Значение)
> group by A.Поле1
>
> A.Поле1 и B.Поле1 являются primary key для своих таблиц
> A.Поле2 и Б.Поле2 проиндексированы отдельными индексами.
> ни один из индексов не используется.
>
> Вопрос - Почему.
>


From: vi.k - 20/01/2003 - 15:50:23
Subject:Почему не используются индексы
-----------------
А ты уверен, что получаешь своим запросом, пусть он хоть и медленный, то что тебе нужно? А то я как-то не до конца понял, что же всё таки должно быть.
Может примеры таблиц тогда что-ли?

Я считаю, что в твоём запросе ты получишь много повторяющихся пользователей у которых crm_owner=1
Хотя бы select DISTINCT тогда что-ли...

В моём ответе:
получаем список пользователей которые обязательно делали заказы !!! Просто делали заказы. Пока не важно какие.
Если они их не делали вообще, в список они не попадают.
(Иначе надо использовать LEFT JOIN, а это медленная штука, аналогично твоему запросу)

И дальше уже идёт условие:
те которые делали заказы у заданного магазина
либо те, у которых crm_owner=1

Пользователи уникальны.



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

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

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



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