sql - PostgreSQL select all from one table and join count from table relation -



sql - PostgreSQL select all from one table and join count from table relation -

i have 2 tables, post_categories , posts. i'm trying select * post_categories;, homecoming temporary column count each time post category used on post.

posts

| id | name | post_category_id | | 1 | test | 1 | | 2 | nest | 1 | | 3 | vest | 2 | | 4 | zest | 3 |

post categories

| id | name | | 1 | cat_1 | | 2 | cat_2 | | 3 | cat_3 |

basically, i'm trying without subqueries , joins instead. this, in real psql.

select * post_categories some-type-of-join posts, count(*)

resulting in this, ideally.

| id | name | count | | 1 | cat_1 | 2 | | 2 | cat_2 | 1 | | 3 | cat_3 | 1 |

your help appreciated :d

you can utilize derived table contains counts per post_category_id , left bring together post_categories table

select p.*, coalesce(t1.p_count,0) post_categories p left bring together ( select post_category_id, count(*) p_count posts grouping post_category_id ) t1 on t1.post_category_id = p.id

sql postgresql join count psql

Comments

Popular posts from this blog

java Multi query from Mysql using netbeans -

c# - DotNetZip fails with "stream does not support seek operations" -

c++ - StartServiceCtrlDispatcher don't can access 1063 error -