我有两个表,post_categories和帖子.我正在尝试从post_categories;中选择*,但每次在帖子上使用帖子类别时,也会返回一个带有计数的临时列.
帖子
| id | name | post_category_id | | 1 | test | 1 | | 2 | nest | 1 | | 3 | vest | 2 | | 4 | zest | 3 |
发布类别
| id | name | | 1 | cat_1 | | 2 | cat_2 | | 3 | cat_3 |
基本上,我试图在没有子查询和连接的情况下这样做.像这样的东西,但在真正的psql中.
select * from post_categories some-type-of-join帖子,count(*)
理想情况下,这样做.
| id | name | count | | 1 | cat_1 | 2 | | 2 | cat_2 | 1 | | 3 | cat_3 | 1 |
非常感谢您的帮助:D
解决方法
您可以使用包含每个post_category_id计数的派生表,并将其连接到post_categories表
select p.*,coalesce(t1.p_count,0) from post_categories p left join ( select post_category_id,count(*) p_count from posts group by post_category_id ) t1 on t1.post_category_id = p.id
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。