PostgreSQL从一个表中选择all并从表关系中连接计数
发布时间:2020-12-13 16:06:18 所属栏目:百科 来源:网络整理
导读:我有两个表,post_categories和帖子.我正在尝试从post_categories;中选择*,但每次在帖子上使用帖子类别时,也会返回一个带有计数的临时列. 帖子 | id | name | post_category_id || 1 | test | 1 || 2 | nest | 1 || 3 | vest | 2 || 4 | zest | 3 | 发布类别
我有两个表,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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |