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




MySQL.RU - Webboard



Вернуться
опимизировать запрос (Serg) 10/03/2016 - 12:28:01
      Re: опимизировать запрос (Akina) 10/03/2016 - 13:56:07
      Re: опимизировать запрос (Serg) 11/03/2016 - 13:47:33
      Re: опимизировать запрос (Akina) 11/03/2016 - 18:07:15
      Re: опимизировать запрос (Akina) 11/03/2016 - 18:09:12

> Original message text:
> From: Serg - 10/03/2016 - 12:28:01
> Subject:опимизировать запрос
> -----------------
> Есть смайлики, которые пользователи шлют друг другу, нужно получить не только смайлик и пользовательский айди, но и сколько смайликов получил этот пользователь от других.
> сейчас так
> SELECT user_id as ID, stamp, time,(SELECT count(ur2.user_id) AS count FROM wp_user_relationship ur2 WHERE ur2.recipient_id = ur.user_id) as likes FROM wp_user_relationship ur WHERE recipient_id=1492 AND recipient_id NOT IN (4761,3092,3653) ORDER BY time DESC;
> Оно работет, но интуиция подсказывает, что можно красивее, интерес академический, подскажите куда копать.
>


From: Akina - 10/03/2016 - 13:56:07
Subject:опимизировать запрос
-----------------
Во бред-то...

Во-первых, от конструкции

WHERE recipient_id=1492
AND recipient_id NOT IN (4761,3092,3653)

попахивает каким-то изощрённым мазохизмом. Вот какие из записей ты намереваешься отсеивать вторым условием, если выполняется первое?

Во-вторых, нафига потребовался коррелированный подзапрос, когда можно обойтись тривиальнейшим связыванием?


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

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

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



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