由于在laravel中无法正常工作而加入和分组

时间:2017-12-06 19:25:47

标签: php mysql eloquent

我有一个有2个表的博客。带有密钥postscategory_id表的第一个categories表。在页面中,我想显示所有类别的帖子数量。我写这个查询,但它有一个问题。它没有显示没有帖子的类别。在其他单词类别中有0个帖子没有出现在结果中。

你能帮助在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 

1 个答案:

答案 0 :(得分:0)

尝试以下查询:

SELECT categories.* , IFNULL(Count(posts.id),0) as total
FROM categories
LEFT JOIN 
posts
ON posts.category_id = categories.id 
Group by categories.id;