2 개의 테이블이있는 블로그가 있습니다. 먼저 posts
키가있는 테이블 category_id
및 categories
테이블. 한 페이지에서 모든 카테고리에 게시물 수를 표시하려고합니다. 이 쿼리를 작성했지만 문제가 있습니다. 게시물이없는 카테고리는 표시되지 않았습니다. 0 개의 게시물이있는 다른 단어 카테고리에서는 결과에 나타나지 않았습니다.laravel에서 제대로 작동하지 않아 그룹에 가입하고 그룹화하십시오.
그리고 당신은 laravel에 설득력 시스템에
SELECT categories.* , Count(posts.total) as total
FROM categories
LEFT JOIN
(
SELECT * , COUNT(*) as total from posts GROUP By posts.id
) as posts
ON posts.category_id = categories.id
정확히 당신이하지 때 외부'COUNT' 할 것으로 예상 할 무엇 바깥 쪽 'GROUP BY'가 있습니까? 또한 집계 함수 (예 :'COUNT')이거나'GROUP에 나열된 열만 선택하는 SQL 표준을 따를 수 있도록'*'대신 명시 적으로 열을 선택하는 습관을 가져야합니다 BY'. –