QUERY PLAN
Group (cost=18336.32..18340.26 rows=526 width=18)
Group Key: c.object_type, sub.unreadcount
-> Sort (cost=18336.32..18337.63 rows=526 width=10)
Sort Key: c.object_type, sub.unreadcount
-> Hash Left Join (cost=14187.74..18312.54 rows=526 width=10)
Hash Cond: ((c.object_type)::text = (sub.object_type)::text)
-> Hash Right Join (cost=9738.50..13861.79 rows=526 width=2)
Hash Cond: (uc.comment_id = c.id)
Filter: ((uc.remind_user_id = 1000) OR (c.created_by = 1000))
-> Gather (cost=1000.00..4369.01 rows=488 width=8)
Workers Planned: 1
-> Parallel Seq Scan on tbl_unread_comments uc (cost=0.00..3320.21 rows=287 width=8)
Filter: (remind_user_id = 1000)
-> Hash (cost=6073.06..6073.06 rows=153315 width=10)
-> Seq Scan on tbl_comments c (cost=0.00..6073.06 rows=153315 width=10)
Filter: is_system
-> Hash (cost=4449.00..4449.00 rows=19 width=10)
-> Subquery Scan on sub (cost=4447.00..4449.00 rows=19 width=10)
-> Finalize GroupAggregate (cost=4447.00..4448.81 rows=19 width=10)
Group Key: uc_1.object_type
-> Gather Merge (cost=4447.00..4448.56 rows=12 width=10)
Workers Planned: 1
-> Partial GroupAggregate (cost=3446.99..3447.20 rows=12 width=10)
Group Key: uc_1.object_type
-> Sort (cost=3446.99..3447.02 rows=12 width=2)
Sort Key: uc_1.object_type
-> Nested Loop (cost=0.42..3446.78 rows=12 width=2)
-> Parallel Seq Scan on tbl_unread_comments uc_1 (cost=0.00..3320.21 rows=15 width=6)
Filter: ((NOT is_read) AND (remind_user_id = 1000))
-> Index Scan using tbl_comments_pkey on tbl_comments c_1 (cost=0.42..8.44 rows=1 width=4)
Index Cond: (id = uc_1.comment_id)
Filter: is_system