2013-07-30 2 views
0

BY ORDER I가 잘 작동이 쿼리MySQL의 GROUP BY가 가입하고

$query = "SELECT 
     beva_post.*, 
     CONVERT_TZ(beva_post.date_published, '-00:00', '+00:00') as moment, 
     beva_rubrique.titre_en, 
     beva_user.image_user 
     FROM beva_post 
     LEFT JOIN beva_user 
      ON beva_user.id_user = beva_post.id_user 
     LEFT JOIN beva_rubrique 
      ON beva_rubrique.id_rubrique = beva_post.id_rubrique 
     LEFT JOIN beva_post_like 
      ON beva_post_like.id_post = beva_post.id_post 
     WHERE beva_post.id_user != '' 
     AND beva_post.flag = 'true' "; 
$query .= "ORDER BY beva_post.id_post DESC "; 
$query .= "LIMIT 50"; 

하지만 id_user에 의해 같은 가장이없는 id_post의 DESC가 아니라 id_post하여이 쿼리를 주문하고 싶습니다 (DESC)

beva_post_like 테이블에서 beva_post_like 테이블은 다음과 같습니다

+-------------+--------------+ 
    | id_post  | id_user  | 
    +-------------+--------------+ 
    | 1   | 20   | 
    | 1   | 11   | 
    | 1   | 10   | 
    | 2   | 20   | 
    | 2   | 50   | 
    | 1   | 15   | 
    +-------------+--------------+ 

내가 beva_post_like 가입 왼쪽에서 GROUP BY와 시도했지만 작동하지 않습니다!

더 많은 쿼리를 사용해야합니까? 당신의 도움에 대한

감사합니다 ...

크리스

당신의 대답 후 나는 이런 짓을하지만, 난 여전히 '처럼'끝에

$query = "SELECT 
     beva_post.*, 
     COUNT(beva_post.id_post) as cpt, 
     CONVERT_TZ(beva_post.date_published, '-00:00', '+00:00') as moment, 
     beva_rubrique.titre_en, 
     beva_user.image_user 
     FROM beva_post 
     LEFT JOIN beva_user 
      ON beva_user.id_user = beva_post.id_user 
     LEFT JOIN beva_rubrique 
      ON beva_rubrique.id_rubrique = beva_post.id_rubrique 
     LEFT JOIN beva_post_like 
      ON beva_post_like.id_post = beva_post.id_post 
     WHERE beva_post.id_user != '' 
     AND beva_post.flag = 'true' "; 
$query .= "GROUP BY beva_post.id_post "; 
$query .= "ORDER BY cpt DESC "; 
$query .= "LIMIT 50"; 

답변

1

당신이 갖고 싶어 일부 게시물이 게시물이 마음에 든 사용자 수로 정렬 되었습니까? 이 경우 GROUP BY id_post 일 수 있으며 SELECT에는 COUNT(id_user)을, COUNT(id_user)에는 ORDER BY DESC를 추가 할 수 있습니다.

질문을 오해 한 경우 ORDER BY 목표를보다 정확하게 지정할 수 있습니까?

+0

사용자가 가장 좋아하는 사람들이 게시물을 주문해야합니다. 어떤 것도 갖고 있지 않은 포스트는 쇼가되어야하지만 결국에는 끝나야합니다. – Chris

+0

아니요 작동하지 않습니다! – Chris

+0

왜 작동하지 않습니까? 'GROUP BY'가 결과를 반환하지 않았습니까? 새 검색어로 첫 번째 소식을 수정할 수 있습니까? – Damien

관련 문제