QUERY PLAN
Aggregate (cost=339.59..339.60 rows=1 width=8)
-> Sort (cost=339.21..339.28 rows=25 width=870)
Sort Key: p.bargain_date DESC, p.updated_at DESC
-> Subquery Scan on p (cost=337.88..338.63 rows=25 width=870)
-> GroupAggregate (cost=337.88..338.38 rows=25 width=842)
Group Key: p_1.id, pd.user_id, pd.pct
-> Sort (cost=337.88..337.95 rows=25 width=60)
Sort Key: p_1.id, pd.user_id, pd.pct
-> Hash Left Join (cost=214.41..337.30 rows=25 width=60)
Hash Cond: (p_1.id = pd.project_id)
-> Hash Right Join (cost=200.30..323.09 rows=25 width=24)
Hash Cond: (sc.from_project = p_1.id)
-> Seq Scan on tbl_sales_contracts sc (cost=0.00..118.25 rows=1725 width=4)
-> Hash (cost=199.99..199.99 rows=25 width=24)
-> Seq Scan on tbl_projects p_1 (cost=0.00..199.99 rows=25 width=24)
Filter: ((bargain_date >= '2025-12-01'::date) AND (bargain_date <= '2025-12-31'::date) AND (project_status = 3))
-> Hash (cost=14.10..14.10 rows=1 width=40)
-> Subquery Scan on pd (cost=14.06..14.10 rows=1 width=40)
-> GroupAggregate (cost=14.06..14.09 rows=1 width=40)
Group Key: t.project_id, r.user_id
-> Sort (cost=14.06..14.07 rows=1 width=13)
Sort Key: t.project_id, r.user_id
-> Nested Loop Left Join (cost=0.00..14.05 rows=1 width=13)
Join Filter: (t.id = r.erp_profit_distribute_id)
-> Seq Scan on tbl_erp_profit_distributes t (cost=0.00..12.88 rows=1 width=8)
Filter: ((project_id IS NOT NULL) AND (status = 2))
-> Seq Scan on tbl_erp_profit_distribute_pcts r (cost=0.00..1.08 rows=8 width=13)