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




MySQL.RU - Webboard



Вернуться
два подзапроса в одном (Анатолий) 21/06/2007 - 12:16:18
      Re: два подзапроса в одном (bac) 21/06/2007 - 12:56:27
      Re: два подзапроса в одном (Анатолий) 21/06/2007 - 13:04:45
      Re: два подзапроса в одном (bac) 21/06/2007 - 18:45:22

> Original message text:
> From: Анатолий - 21/06/2007 - 12:16:18
> Subject:два подзапроса в одном
> -----------------
> есть 3 табл
> 1:
>
> posts:
> id | post
>
> coment:
> id | post_id | date | text
>
> emo:
> id | post_id | date | em
>
> мне нужно получить:
> ид_поста | количество_каментов к нему | количество_эмоций к нему
>
> пробовал делать тупо два INNER Join но два штуки не работают в одном запросе.
>
> ВОПРОС: можно ли все это сделать одним запросом? если да то каК?
>


From: Анатолий - 21/06/2007 - 13:04:45
Subject:два подзапроса в одном
-----------------
ну просто два подряд иннер джоина.
лана суть уже не в этом. я сделал два подзапроса, все работает.
вот запрос:
######
select t1.id, t1.datetime, t1.title, t1.anons, t1.news_prv, t3.user_login, t4.site,
(t1.reting_emo + t1.reting_com + t1.reting_show) AS summ
,
(
SELECT count(com_db.id) AS count_com FROM blogs_com AS com_db WHERE com_db.blog_id = t1.id
AND DATE_ADD( NOW( ) , INTERVAL -10 DAY ) < com_db.datetime
AND NOW( ) > com_db.datetime
),
(
SELECT count(em_db.id) AS count_em FROM blogs_reting AS em_db WHERE em_db.post_id = t1.id
AND DATE_ADD( NOW( ) , INTERVAL -10 DAY ) < em_db.datetime
AND NOW( ) > em_db.datetime
)
FROM `blogs` AS t1, blogs_users AS t3, ya_sites AS t4
WHERE
t1.deleted = 0
AND t1.news = 1
AND t3.id = t1.who
AND t4.id = t3.idsi
GROUP BY t1.id
ORDER BY summ DESC, t1.datetime DESC LIMIT 10
######

вопрос: можно ли как то заставить его выбирать только записи в которых (count_em + count_com) > 10 ?


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

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

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



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