QUERY PLAN
Aggregate (cost=2407.21..2407.22 rows=1 width=8)
-> HashAggregate (cost=2277.47..2357.31 rows=3992 width=22)
Group Key: c.id, c.client_class, cc.notice_days, (date_part('epoch'::text, (now() - max(sl.end_at))) / '86400'::double precision)
-> HashAggregate (cost=2157.71..2237.55 rows=3992 width=22)
Group Key: c.id, cc.id
Filter: ((date_part('epoch'::text, (now() - max(sl.end_at))) / '86400'::double precision) > (cc.notice_days)::double precision)
-> Hash Left Join (cost=150.23..1978.89 rows=17882 width=22)
Hash Cond: (c.client_class = cc.id)
-> Hash Right Join (cost=149.14..1901.32 rows=17882 width=16)
Hash Cond: (sl.client_id = c.id)
-> Seq Scan on tbl_work_logs sl (cost=0.00..1661.24 rows=34581 width=12)
Filter: (NOT is_draft)
-> Hash (cost=136.66..136.66 rows=998 width=8)
-> Seq Scan on tbl_clients c (cost=0.00..136.66 rows=998 width=8)
Filter: ((NOT deleted) AND (sales_rep = ANY ('{1001,1004,1005,1013,5087,5295,5300,5311,5329,5332,5420,5448,5449}'::integer[])))
-> Hash (cost=1.04..1.04 rows=4 width=6)
-> Seq Scan on tbl_client_classes cc (cost=0.00..1.04 rows=4 width=6)