2014-09-07 8 views
0

이것은 내 머리 속에서 실제로 생각하고있는 간단한 쿼리입니다.하위 쿼리의 카운트를 기반으로 테이블 결과 표시

블로그 테이블 :

blog_id 
blog_name 
blog_copy 

의견 테이블 :

내가 거기에 3 개 이상의 댓글이 또한 응답의 부피를 주문 블로그 항목을 표시 할
comment_id 
comment_copy 
comment_by 
blog_id 

.

나는이를 포함하여 많은 쿼리를 시도했지만 그냥 작동하지 않습니다

SELECT 
    *, blog_id as BID , 
    (SELECT blog_id 
    FROM comments 
    WHERE blog = BID HAVING COUNT(*) > 3) AS t2 
FROM blog 
WHERE mostcomments > '3' 
ORDER by mostcomments ASC 

그것은 mostcomments가 존재하지 않는 것을 말한다. 나는 그것을 다른 방법을했습니다 그리고 전체 blog_id 당이 당신은 GROUP BY 사용할 필요가

답변

1

을 찾고 있지 합계에서 카운트 코멘트를 제외한 실행 :

select b.blog_id, count(*) 
from blog b 
    join comments c on b.blog_id = c.blog_id 
group by b.blog_id 
having count(*) > 2 
order by count(*) desc 
+0

아, 그건입니다 완전한. 고맙습니다! –

관련 문제