QUERY PLAN
Sort (cost=20841.71..20846.22 rows=1804 width=18)
Sort Key: c.object_type
-> HashAggregate (cost=20726.10..20744.14 rows=1804 width=18)
Group Key: c.object_type, sub.unreadcount
-> Hash Left Join (cost=15203.69..20665.72 rows=12076 width=10)
Hash Cond: ((c.object_type)::text = (sub.object_type)::text)
-> Hash Right Join (cost=8747.07..14174.34 rows=12076 width=2)
Hash Cond: (uc.comment_id = c.id)
Filter: ((uc.remind_user_id = 1011) OR (c.created_by = 1011))
-> Seq Scan on tbl_unread_comments uc (cost=0.00..4570.88 rows=10057 width=8)
Filter: (remind_user_id = 1011)
-> Hash (cost=6078.82..6078.82 rows=153460 width=10)
-> Seq Scan on tbl_comments c (cost=0.00..6078.82 rows=153460 width=10)
Filter: is_system
-> Hash (cost=6456.11..6456.11 rows=41 width=10)
-> Subquery Scan on sub (cost=6448.16..6456.11 rows=41 width=10)
-> Finalize GroupAggregate (cost=6448.16..6455.70 rows=41 width=10)
Group Key: uc_1.object_type
-> Gather Merge (cost=6448.16..6455.09 rows=41 width=10)
Workers Planned: 1
-> Partial GroupAggregate (cost=5448.15..5450.46 rows=41 width=10)
Group Key: uc_1.object_type
-> Sort (cost=5448.15..5448.78 rows=254 width=2)
Sort Key: uc_1.object_type
-> Nested Loop (cost=0.42..5438.00 rows=254 width=2)
-> Parallel Seq Scan on tbl_unread_comments uc_1 (cost=0.00..3324.51 rows=308 width=6)
Filter: ((NOT is_read) AND (remind_user_id = 1011))
-> Index Scan using tbl_comments_pkey on tbl_comments c_1 (cost=0.42..6.86 rows=1 width=4)
Index Cond: (id = uc_1.comment_id)
Filter: is_system