2013-12-11 1 views
1

의견 수에 따라 블로그 게시물을 주문하고 싶습니다. 등 내 게시물을 검색하려면 내가 사용한 테이블을 계산하고 주문합니다.

$result = DB::query("SELECT R.rumorID, R.rumor_author, R.rumor_title, R.rumor_text, T.topic_name, A.first_name, A.surname, T.topicID, R.datum_geplaatst 
        FROM Rumor R JOIN Account A 
        ON A.userID = R.rumor_author 
        JOIN Topic T 
        ON T.topicID = R.topicID 
        ORDER BY $sortby $order"); 


     foreach ($result as $rumor) { 
      $r_id = $rumor['rumorID']; 

은 $ sortby과 $ 순서는 $ _GET, 나는 블로그 "에 의해 순서"링크를 사용합니다.

$commentcount = DB::query("SELECT count(*) 
          FROM Rumor R JOIN Comment C 
          ON R.rumorID = C.rumorID 
          WHERE R.rumorID = :rumor", array(':rumor' => $r_id)); 

      $rumortext = $rumor['rumor_text']; 
      $date = $rumor['datum_geplaatst']; 
      $countcomments = $commentcount[0]['count(*)']; 

그래서, 날짜, 제목, 주제, 저자 등으로 주문할 수 있습니다하지만 내가 어떻게에 의해 주문 관리합니까 :

블로그 포스트와 함께 제공 댓글의 수를 검색하려면, 내가 사용 의견의 양?

+0

속임수를 썼는지 http://stackoverflow.com/questions/11904817/mysql-order-by-count-subquery-trouble – Aneri

답변

0

이것은 꺼져있을 수 있습니다. 여기 내 머리의 상단에서 쓰기 :

SELECT R.rumorID, R.rumor_author, R.rumor_title, R.rumor_text, T.topic_name, A.first_name, A.surname, T.topicID, R.datum_geplaatst, count(c.rumorID) AS commentCount 
FROM Rumor R 
JOIN Account A ON A.userID = R.rumor_author 
JOIN Topic T ON T.topicID = R.topicID 
LEFT JOIN Comment C ON R.rumorID = C.rumorID 
GROUP BY R.rumorID 
ORDER BY commentCount ASC 
+0

니스 :)의 사용 가능한 복제, 감사! – user3091918

관련 문제