QUERY PLAN
Aggregate (cost=27083.62..27083.63 rows=1 width=8)
-> Sort (cost=26974.58..26992.76 rows=7269 width=1074)
Sort Key: (CASE WHEN (tmp1.budgets IS NULL) THEN '0'::numeric ELSE tmp1.budgets END) DESC, c.created_at DESC
-> Group (cost=20934.01..23078.37 rows=7269 width=1074)
Group Key: c.id, (CASE WHEN (tmp1.budgets IS NULL) THEN '0'::numeric ELSE tmp1.budgets END), (CASE WHEN (tmp1.profits IS NULL) THEN '0'::numeric ELSE tmp1.profits END), (CASE WHEN (tmp1.count IS NULL) THEN '0'::bigint ELSE tmp1.count END), (CASE WHEN ((tmp1.budgets IS NULL) OR (tmp1.budgets = '0'::numeric)) THEN '0'::numeric ELSE (tmp1.profits / tmp1.budgets) END), (CASE WHEN (tmp2.budgets IS NULL) THEN '0'::numeric ELSE tmp2.budgets END), (CASE WHEN (tmp2.count IS NULL) THEN '0'::bigint ELSE tmp2.count END), (CASE WHEN (tmp3.budgets IS NULL) THEN '0'::numeric ELSE tmp3.budgets END), (CASE WHEN (tmp3.count IS NULL) THEN '0'::bigint ELSE tmp3.count END), (CASE WHEN (tmp4.pre_sales_counts IS NULL) THEN '0'::bigint ELSE tmp4.pre_sales_counts END), (CASE WHEN (tmp5.implement_counts IS NULL) THEN '0'::bigint ELSE tmp5.implement_counts END), (CASE WHEN (tmp4.pre_sales_times IS NOT NULL) THEN (date_part('epoch'::text, tmp4.pre_sales_times) / '3600'::double precision) ELSE '0'::double precision END), (CASE WHEN (tmp5.implement_times IS NOT NULL) THEN (date_part('epoch'::text, tmp5.implement_times) / '3600'::double precision) ELSE '0'::double precision END), (CASE WHEN (tmp7.work_times IS NOT NULL) THEN tmp7.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp7.work_count IS NOT NULL) THEN tmp7.work_count ELSE '0'::bigint END), tmp1.last_bargain_date, (CASE WHEN (tmp8.reimbursement_amount IS NOT NULL) THEN tmp8.reimbursement_amount ELSE '0'::numeric END), (CASE WHEN (tmp9.points IS NOT NULL) THEN tmp9.points ELSE '0'::numeric END), tmp1.count, ci.id, ct.id, (CASE WHEN (c.client_class IS NOT NULL) THEN (((((CASE WHEN (cc.contact_base > 0) THEN floor((CASE WHEN (c.contact_count > cc.contact_base) THEN '15'::bigint ELSE ((c.contact_count * 15) / cc.contact_base) END)::double precision) ELSE '15'::double precision END + floor((((c.client_base_info_count * 15) / 9))::double precision)) + CASE WHEN (cc.visit_base > 0) THEN floor(CASE WHEN ((c.visit_count)::double precision > ceil((CASE WHEN (date_part('year'::text, now()) = date_part('year'::text, ((c.created_at)::date)::timestamp without time zone)) THEN ((((now())::date - (c.created_at)::date) + 1))::double precision ELSE '352'::double precision END / (cc.visit_base)::double precision))) THEN '20'::double precision ELSE (((c.visit_count * 20))::double precision / ceil((CASE WHEN (date_part('year'::text, now()) = date_part('year'::text, ((c.created_at)::date)::timestamp without time zone)) THEN ((((now())::date - (c.created_at)::date) + 1))::double precision ELSE '352'::double precision END / (cc.visit_base)::double precision))) END) ELSE '20'::double precision END) + CASE WHEN (cc.cooperate_base > 0) THEN floor((CASE WHEN (c.cooperate_count > cc.cooperate_base) THEN '20'::bigint ELSE ((c.cooperate_count * 20) / cc.cooperate_base) END)::double precision) ELSE '20'::double precision END) + CASE WHEN (cc.case_pre_sales_base > 0) THEN floor((CASE WHEN (c.case_pre_sales_count > cc.case_pre_sales_base) THEN '15'::bigint ELSE ((c.case_pre_sales_count * 15) / cc.case_pre_sales_base) END)::double precision) ELSE '15'::double precision END) + CASE WHEN (cc.case_implement_base > 0) THEN floor((CASE WHEN (c.case_implement_count > cc.case_implement_base) THEN '15'::bigint ELSE ((c.case_implement_count * 15) / cc.case_implement_base) END)::double precision) ELSE '15'::double precision END) ELSE NULL::double precision END), (CASE WHEN (tmp1.collected IS NULL) THEN '0'::numeric ELSE tmp1.collected END), (CASE WHEN (tmp1.un_collected IS NULL) THEN '0'::numeric ELSE tmp1.un_collected END), (CASE WHEN (tmp10.invoices IS NULL) THEN '0'::numeric ELSE tmp10.invoices END), (CASE WHEN (tmp10.un_invoices IS NULL) THEN '0'::numeric ELSE tmp10.un_invoices END), (CASE WHEN (tmp11.count IS NULL) THEN '0'::bigint ELSE tmp11.count END), (CASE WHEN (tmp12.budgets IS NULL) THEN '0'::numeric ELSE tmp12.budgets END), (CASE WHEN (tmp1.used_clients IS NULL) THEN '0'::bigint ELSE tmp1.used_clients END), (CASE WHEN (tmp13.budgets IS NULL) THEN '0'::numeric ELSE tmp13.budgets END), (CASE WHEN (tmp13.profits IS NULL) THEN '0'::numeric ELSE tmp13.profits END), (CASE WHEN (tmp14.work_times IS NOT NULL) THEN tmp14.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp14.work_count IS NOT NULL) THEN tmp14.work_count ELSE '0'::bigint END), (CASE WHEN (tmp15.work_times IS NOT NULL) THEN tmp15.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp15.work_count IS NOT NULL) THEN tmp15.work_count ELSE '0'::bigint END), (CASE WHEN (tmp16.work_times IS NOT NULL) THEN tmp16.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp16.work_count IS NOT NULL) THEN tmp16.work_count ELSE '0'::bigint END), (CASE WHEN (tmp17.work_times IS NOT NULL) THEN tmp17.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp17.work_count IS NOT NULL) THEN tmp17.work_count ELSE '0'::bigint END), (CASE WHEN (tmp18.work_times IS NOT NULL) THEN tmp18.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp18.work_count IS NOT NULL) THEN tmp18.work_count ELSE '0'::bigint END)
-> Sort (cost=20934.01..20952.18 rows=7269 width=1041)
Sort Key: c.id, (CASE WHEN (tmp1.budgets IS NULL) THEN '0'::numeric ELSE tmp1.budgets END) DESC, (CASE WHEN (tmp1.profits IS NULL) THEN '0'::numeric ELSE tmp1.profits END), (CASE WHEN (tmp1.count IS NULL) THEN '0'::bigint ELSE tmp1.count END), (CASE WHEN ((tmp1.budgets IS NULL) OR (tmp1.budgets = '0'::numeric)) THEN '0'::numeric ELSE (tmp1.profits / tmp1.budgets) END), (CASE WHEN (tmp2.budgets IS NULL) THEN '0'::numeric ELSE tmp2.budgets END), (CASE WHEN (tmp2.count IS NULL) THEN '0'::bigint ELSE tmp2.count END), (CASE WHEN (tmp3.budgets IS NULL) THEN '0'::numeric ELSE tmp3.budgets END), (CASE WHEN (tmp3.count IS NULL) THEN '0'::bigint ELSE tmp3.count END), (CASE WHEN (tmp4.pre_sales_counts IS NULL) THEN '0'::bigint ELSE tmp4.pre_sales_counts END), (CASE WHEN (tmp5.implement_counts IS NULL) THEN '0'::bigint ELSE tmp5.implement_counts END), (CASE WHEN (tmp4.pre_sales_times IS NOT NULL) THEN (date_part('epoch'::text, tmp4.pre_sales_times) / '3600'::double precision) ELSE '0'::double precision END), (CASE WHEN (tmp5.implement_times IS NOT NULL) THEN (date_part('epoch'::text, tmp5.implement_times) / '3600'::double precision) ELSE '0'::double precision END), (CASE WHEN (tmp7.work_times IS NOT NULL) THEN tmp7.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp7.work_count IS NOT NULL) THEN tmp7.work_count ELSE '0'::bigint END), tmp1.last_bargain_date, (CASE WHEN (tmp8.reimbursement_amount IS NOT NULL) THEN tmp8.reimbursement_amount ELSE '0'::numeric END), (CASE WHEN (tmp9.points IS NOT NULL) THEN tmp9.points ELSE '0'::numeric END), tmp1.count, ci.id, ct.id, (CASE WHEN (c.client_class IS NOT NULL) THEN (((((CASE WHEN (cc.contact_base > 0) THEN floor((CASE WHEN (c.contact_count > cc.contact_base) THEN '15'::bigint ELSE ((c.contact_count * 15) / cc.contact_base) END)::double precision) ELSE '15'::double precision END + floor((((c.client_base_info_count * 15) / 9))::double precision)) + CASE WHEN (cc.visit_base > 0) THEN floor(CASE WHEN ((c.visit_count)::double precision > ceil((CASE WHEN (date_part('year'::text, now()) = date_part('year'::text, ((c.created_at)::date)::timestamp without time zone)) THEN ((((now())::date - (c.created_at)::date) + 1))::double precision ELSE '352'::double precision END / (cc.visit_base)::double precision))) THEN '20'::double precision ELSE (((c.visit_count * 20))::double precision / ceil((CASE WHEN (date_part('year'::text, now()) = date_part('year'::text, ((c.created_at)::date)::timestamp without time zone)) THEN ((((now())::date - (c.created_at)::date) + 1))::double precision ELSE '352'::double precision END / (cc.visit_base)::double precision))) END) ELSE '20'::double precision END) + CASE WHEN (cc.cooperate_base > 0) THEN floor((CASE WHEN (c.cooperate_count > cc.cooperate_base) THEN '20'::bigint ELSE ((c.cooperate_count * 20) / cc.cooperate_base) END)::double precision) ELSE '20'::double precision END) + CASE WHEN (cc.case_pre_sales_base > 0) THEN floor((CASE WHEN (c.case_pre_sales_count > cc.case_pre_sales_base) THEN '15'::bigint ELSE ((c.case_pre_sales_count * 15) / cc.case_pre_sales_base) END)::double precision) ELSE '15'::double precision END) + CASE WHEN (cc.case_implement_base > 0) THEN floor((CASE WHEN (c.case_implement_count > cc.case_implement_base) THEN '15'::bigint ELSE ((c.case_implement_count * 15) / cc.case_implement_base) END)::double precision) ELSE '15'::double precision END) ELSE NULL::double precision END), (CASE WHEN (tmp1.collected IS NULL) THEN '0'::numeric ELSE tmp1.collected END), (CASE WHEN (tmp1.un_collected IS NULL) THEN '0'::numeric ELSE tmp1.un_collected END), (CASE WHEN (tmp10.invoices IS NULL) THEN '0'::numeric ELSE tmp10.invoices END), (CASE WHEN (tmp10.un_invoices IS NULL) THEN '0'::numeric ELSE tmp10.un_invoices END), (CASE WHEN (tmp11.count IS NULL) THEN '0'::bigint ELSE tmp11.count END), (CASE WHEN (tmp12.budgets IS NULL) THEN '0'::numeric ELSE tmp12.budgets END), (CASE WHEN (tmp1.used_clients IS NULL) THEN '0'::bigint ELSE tmp1.used_clients END), (CASE WHEN (tmp13.budgets IS NULL) THEN '0'::numeric ELSE tmp13.budgets END), (CASE WHEN (tmp13.profits IS NULL) THEN '0'::numeric ELSE tmp13.profits END), (CASE WHEN (tmp14.work_times IS NOT NULL) THEN tmp14.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp14.work_count IS NOT NULL) THEN tmp14.work_count ELSE '0'::bigint END), (CASE WHEN (tmp15.work_times IS NOT NULL) THEN tmp15.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp15.work_count IS NOT NULL) THEN tmp15.work_count ELSE '0'::bigint END), (CASE WHEN (tmp16.work_times IS NOT NULL) THEN tmp16.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp16.work_count IS NOT NULL) THEN tmp16.work_count ELSE '0'::bigint END), (CASE WHEN (tmp17.work_times IS NOT NULL) THEN tmp17.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp17.work_count IS NOT NULL) THEN tmp17.work_count ELSE '0'::bigint END), (CASE WHEN (tmp18.work_times IS NOT NULL) THEN tmp18.work_times ELSE '00:00:00'::interval END), (CASE WHEN (tmp18.work_count IS NOT NULL) THEN tmp18.work_count ELSE '0'::bigint END)
-> Hash Left Join (cost=15360.38..17135.79 rows=7269 width=1041)
Hash Cond: (ca.engineer_id = egr.engineer_id)
-> Hash Right Join (cost=15358.78..15653.13 rows=7269 width=1105)
Hash Cond: (cas.client_id = c.id)
-> Hash Right Join (cost=360.20..550.79 rows=8284 width=8)
Hash Cond: (ca.case_id = cas.id)
-> Seq Scan on tbl_case_assignments ca (cost=0.00..168.84 rows=8284 width=8)
-> Hash (cost=257.31..257.31 rows=8231 width=8)
-> Seq Scan on tbl_cases cas (cost=0.00..257.31 rows=8231 width=8)
-> Hash (cost=14977.10..14977.10 rows=1718 width=1101)
-> Hash Left Join (cost=14548.29..14977.10 rows=1718 width=1101)
Hash Cond: (c.client_type = ct.id)
-> Hash Left Join (cost=14547.16..14968.38 rows=1718 width=955)
Hash Cond: (c.client_industry = ci.id)
-> Hash Left Join (cost=14545.62..14961.56 rows=1718 width=809)
Hash Cond: (c.client_class = cc.id)
-> Hash Left Join (cost=14544.53..14953.57 rows=1718 width=769)
Hash Cond: (c.id = tmp18.client_id)
-> Hash Left Join (cost=12776.67..13181.19 rows=1718 width=745)
Hash Cond: (c.id = tmp17.client_id)
-> Hash Left Join (cost=11008.81..11408.81 rows=1718 width=721)
Hash Cond: (c.id = tmp16.client_id)
-> Hash Left Join (cost=9238.34..9633.82 rows=1718 width=697)
Hash Cond: (c.id = tmp15.client_id)
-> Hash Left Join (cost=7426.61..7817.56 rows=1718 width=673)
Hash Cond: (c.id = tmp14.client_id)
-> Hash Left Join (cost=5285.12..5671.56 rows=1718 width=649)
Hash Cond: (c.id = tmp13.client_id)
-> Hash Left Join (cost=5093.42..5475.33 rows=1718 width=585)
Hash Cond: (c.id = tmp12.client_id)
-> Hash Left Join (cost=4877.86..5255.26 rows=1718 width=553)
Hash Cond: (c.id = tmp11.client_id)
-> Hash Left Join (cost=4660.23..5033.11 rows=1718 width=545)
Hash Cond: (c.id = tmp10.client_id)
-> Hash Left Join (cost=4455.67..4824.02 rows=1718 width=481)
Hash Cond: (c.id = tmp9.client_id)
-> Hash Left Join (cost=3514.59..3878.42 rows=1718 width=449)
Hash Cond: (c.id = tmp8.client_id)
-> Hash Left Join (cost=3226.16..3585.47 rows=1718 width=417)
Hash Cond: ((c.id = csrr.client_id) AND (c.sales_rep = csrr.sales_rep))
-> Hash Left Join (cost=3061.21..3385.68 rows=1718 width=417)
Hash Cond: (c.id = tmp7.client_id)
-> Hash Left Join (cost=1365.32..1685.27 rows=1718 width=393)
Hash Cond: (c.id = tmp5.client_id)
-> Hash Left Join (cost=867.98..1183.41 rows=1718 width=369)
Hash Cond: (c.id = tmp4.client_id)
-> Hash Left Join (cost=731.24..1042.15 rows=1718 width=345)
Hash Cond: (c.id = tmp3.client_id)
-> Hash Left Join (cost=548.50..854.89 rows=1718 width=305)
Hash Cond: (c.id = tmp2.client_id)
-> Hash Left Join (cost=367.13..668.99 rows=1718 width=265)
Hash Cond: (c.id = tmp1.client_id)
-> Hash Left Join (cost=11.78..309.12 rows=1718 width=117)
Hash Cond: (c.sales_rep = sgr.sales_id)
-> Seq Scan on tbl_clients c (cost=9.68..293.24 rows=1718 width=117)
Filter: ((NOT deleted) AND ((sales_rep = ANY ('{1001,5049,5301,5022,5209,5026,5293,5309,5356,5329,5299,5303,5302,5332,5047,1026,5096,5070,5448,5420,1029,5037,5087,1008,5048,5043,5045,5230,5031,5088,5208,1003,5294,5357,5044,1030,5076,5300,5027,5089,5311,5066,5069,5364,1009,5295,1013,5128,5203,1025,5032,5075,1004,5072,5033,5359,5409,5412,5229,1005,5304,5449,5358,1006,5093}'::integer[])) OR (sales_rep IS NULL) OR (hashed SubPlan 1)))
SubPlan 1
-> Seq Scan on tbl_user_visit_clients (cost=0.00..9.68 rows=1 width=4)
Filter: (user_id = 1001)
-> Hash (cost=1.49..1.49 rows=49 width=4)
-> Seq Scan on tbl_sales_group_relationships sgr (cost=0.00..1.49 rows=49 width=4)
-> Hash (cost=344.80..344.80 rows=844 width=152)
-> Subquery Scan on tmp1 (cost=266.73..344.80 rows=844 width=152)
-> GroupAggregate (cost=266.73..336.36 rows=844 width=152)
Group Key: p.client_id
-> Sort (cost=266.73..270.79 rows=1623 width=30)
Sort Key: p.client_id
-> Seq Scan on tbl_projects p (cost=0.00..180.19 rows=1623 width=30)
Filter: (project_status = 3)
-> Hash (cost=181.15..181.15 rows=18 width=44)
-> Subquery Scan on tmp2 (cost=180.56..181.15 rows=18 width=44)
-> GroupAggregate (cost=180.56..180.97 rows=18 width=44)
Group Key: p_1.client_id
-> Sort (cost=180.56..180.61 rows=18 width=13)
Sort Key: p_1.client_id
-> Seq Scan on tbl_projects p_1 (cost=0.00..180.19 rows=18 width=13)
Filter: (project_status = 1)
-> Hash (cost=182.00..182.00 rows=60 width=44)
-> Subquery Scan on tmp3 (cost=180.65..182.00 rows=60 width=44)
-> HashAggregate (cost=180.65..181.40 rows=60 width=44)
Group Key: p_2.client_id
-> Seq Scan on tbl_projects p_2 (cost=0.00..180.19 rows=61 width=13)
Filter: (project_status = 2)
-> Hash (cost=132.82..132.82 rows=313 width=28)
-> Subquery Scan on tmp4 (cost=126.56..132.82 rows=313 width=28)
-> HashAggregate (cost=126.56..129.69 rows=313 width=28)
Group Key: ps.client_id
-> Hash Left Join (cost=1.61..110.58 rows=1598 width=24)
Hash Cond: (ps.created_by = egr_1.engineer_id)
-> Seq Scan on tbl_pre_sales ps (cost=0.00..87.00 rows=1598 width=28)
Filter: (NOT is_draft)
-> Hash (cost=1.27..1.27 rows=27 width=4)
-> Seq Scan on tbl_engineer_group_relationships egr_1 (cost=0.00..1.27 rows=27 width=4)
-> Hash (cost=494.27..494.27 rows=246 width=28)
-> Subquery Scan on tmp5 (cost=489.35..494.27 rows=246 width=28)
-> HashAggregate (cost=489.35..491.81 rows=246 width=28)
Group Key: ir.client_id
-> Hash Left Join (cost=1.61..421.58 rows=6777 width=24)
Hash Cond: (ir.created_by = egr_2.engineer_id)
-> Seq Scan on tbl_implement_records ir (cost=0.00..326.79 rows=6777 width=28)
Filter: (NOT is_draft)
-> Hash (cost=1.27..1.27 rows=27 width=4)
-> Seq Scan on tbl_engineer_group_relationships egr_2 (cost=0.00..1.27 rows=27 width=4)
-> Hash (cost=1693.64..1693.64 rows=180 width=28)
-> Subquery Scan on tmp7 (cost=1687.61..1693.64 rows=180 width=28)
-> GroupAggregate (cost=1687.61..1691.84 rows=180 width=28)
Group Key: wl.client_id
-> Sort (cost=1687.61..1688.10 rows=194 width=24)
Sort Key: wl.client_id
-> Seq Scan on tbl_work_logs wl (cost=0.00..1680.24 rows=194 width=24)
Filter: ((NOT is_draft) AND (location_in_id IS NOT NULL) AND (location_out_id IS NOT NULL) AND (client_id IS NOT NULL))
-> Hash (cost=144.59..144.59 rows=1357 width=8)
-> Hash Join (cost=75.23..144.59 rows=1357 width=8)
Hash Cond: (csrr.id = "ANY_subquery".max)
-> Seq Scan on tbl_client_sales_rep_rels csrr (cost=0.00..47.14 rows=2714 width=12)
-> Hash (cost=72.73..72.73 rows=200 width=4)
-> HashAggregate (cost=70.73..72.73 rows=200 width=4)
Group Key: "ANY_subquery".max
-> Subquery Scan on "ANY_subquery" (cost=52.03..68.66 rows=831 width=4)
-> HashAggregate (cost=52.03..60.34 rows=831 width=8)
Group Key: csrrs.client_id
-> Seq Scan on tbl_client_sales_rep_rels csrrs (cost=0.00..47.14 rows=979 width=8)
Filter: (end_at IS NULL)
-> Hash (cost=283.07..283.07 rows=429 width=36)
-> Subquery Scan on tmp8 (cost=273.42..283.07 rows=429 width=36)
-> HashAggregate (cost=273.42..278.78 rows=429 width=36)
Group Key: r.client_id
-> Seq Scan on tbl_reimbursements r (cost=0.00..234.68 rows=7748 width=9)
Filter: (status = ANY ('{2,3}'::integer[]))
-> Hash (cost=938.58..938.58 rows=200 width=36)
-> Subquery Scan on tmp9 (cost=934.08..938.58 rows=200 width=36)
-> HashAggregate (cost=934.08..936.58 rows=200 width=36)
Group Key: c_1.client_id
-> HashAggregate (cost=707.73..810.61 rows=8231 width=40)
Group Key: c_1.id
-> Hash Left Join (cost=361.80..666.31 rows=8284 width=16)
Hash Cond: (ca_1.engineer_id = egr_3.engineer_id)
-> Hash Right Join (cost=360.20..550.79 rows=8284 width=20)
Hash Cond: (ca_1.case_id = c_1.id)
-> Seq Scan on tbl_case_assignments ca_1 (cost=0.00..168.84 rows=8284 width=16)
-> Hash (cost=257.31..257.31 rows=8231 width=8)
-> Seq Scan on tbl_cases c_1 (cost=0.00..257.31 rows=8231 width=8)
-> Hash (cost=1.27..1.27 rows=27 width=4)
-> Seq Scan on tbl_engineer_group_relationships egr_3 (cost=0.00..1.27 rows=27 width=4)
-> Hash (cost=202.07..202.07 rows=200 width=68)
-> Subquery Scan on tmp10 (cost=197.07..202.07 rows=200 width=68)
-> HashAggregate (cost=197.07..200.07 rows=200 width=68)
Group Key: sc.client_id
-> HashAggregate (cost=139.77..160.23 rows=1637 width=47)
Group Key: sc.id
-> Hash Right Join (cost=84.83..130.15 rows=1925 width=21)
Hash Cond: (sci.contract_id = sc.id)
-> Seq Scan on tbl_sales_contract_invoices sci (cost=0.00..40.25 rows=1925 width=10)
-> Hash (cost=64.37..64.37 rows=1637 width=15)
-> Seq Scan on tbl_sales_contracts sc (cost=0.00..64.37 rows=1637 width=15)
-> Hash (cost=206.16..206.16 rows=917 width=12)
-> Subquery Scan on tmp11 (cost=187.82..206.16 rows=917 width=12)
-> HashAggregate (cost=187.82..196.99 rows=917 width=44)
Group Key: p_3.client_id
-> Seq Scan on tbl_projects p_3 (cost=0.00..172.55 rows=3055 width=8)
-> Hash (cost=205.48..205.48 rows=806 width=36)
-> Subquery Scan on tmp12 (cost=187.35..205.48 rows=806 width=36)
-> HashAggregate (cost=187.35..197.42 rows=806 width=44)
Group Key: p_4.client_id
-> Seq Scan on tbl_projects p_4 (cost=0.00..180.19 rows=1432 width=9)
Filter: (project_status <> 3)
-> Hash (cost=190.74..190.74 rows=77 width=68)
-> Subquery Scan on tmp13 (cost=188.81..190.74 rows=77 width=68)
-> HashAggregate (cost=188.81..189.97 rows=77 width=68)
Group Key: p_5.client_id
-> Seq Scan on tbl_projects p_5 (cost=0.00..187.82 rows=79 width=14)
Filter: ((project_status = 1) OR (project_status = 2))
-> Hash (cost=2126.25..2126.25 rows=1219 width=28)
-> Subquery Scan on tmp14 (cost=2101.87..2126.25 rows=1219 width=28)
-> HashAggregate (cost=2101.87..2114.06 rows=1219 width=28)
Group Key: wl_1.client_id
-> Seq Scan on tbl_work_logs wl_1 (cost=0.00..1767.80 rows=33407 width=24)
Filter: ((NOT is_draft) AND (scenario_id = 1))
-> Hash (cost=1800.72..1800.72 rows=881 width=28)
-> Subquery Scan on tmp15 (cost=1783.10..1800.72 rows=881 width=28)
-> HashAggregate (cost=1783.10..1791.91 rows=881 width=28)
Group Key: wl_2.client_id
-> Seq Scan on tbl_work_logs wl_2 (cost=0.00..1767.80 rows=1530 width=24)
Filter: ((NOT is_draft) AND (scenario_id = 2))
-> Hash (cost=1770.01..1770.01 rows=37 width=28)
-> Subquery Scan on tmp16 (cost=1768.80..1770.01 rows=37 width=28)
-> GroupAggregate (cost=1768.80..1769.64 rows=37 width=28)
Group Key: wl_3.client_id
-> Sort (cost=1768.80..1768.89 rows=38 width=24)
Sort Key: wl_3.client_id
-> Seq Scan on tbl_work_logs wl_3 (cost=0.00..1767.80 rows=38 width=24)
Filter: ((NOT is_draft) AND (scenario_id = 3))
-> Hash (cost=1767.85..1767.85 rows=1 width=28)
-> Subquery Scan on tmp17 (cost=1767.81..1767.85 rows=1 width=28)
-> GroupAggregate (cost=1767.81..1767.84 rows=1 width=28)
Group Key: wl_4.client_id
-> Sort (cost=1767.81..1767.82 rows=1 width=24)
Sort Key: wl_4.client_id
-> Seq Scan on tbl_work_logs wl_4 (cost=0.00..1767.80 rows=1 width=24)
Filter: ((NOT is_draft) AND (scenario_id = 4))
-> Hash (cost=1767.85..1767.85 rows=1 width=28)
-> Subquery Scan on tmp18 (cost=1767.81..1767.85 rows=1 width=28)
-> GroupAggregate (cost=1767.81..1767.84 rows=1 width=28)
Group Key: wl_5.client_id
-> Sort (cost=1767.81..1767.82 rows=1 width=24)
Sort Key: wl_5.client_id
-> Seq Scan on tbl_work_logs wl_5 (cost=0.00..1767.80 rows=1 width=24)
Filter: ((NOT is_draft) AND (scenario_id = 5))
-> Hash (cost=1.04..1.04 rows=4 width=44)
-> Seq Scan on tbl_client_classes cc (cost=0.00..1.04 rows=4 width=44)
-> Hash (cost=1.24..1.24 rows=24 width=150)
-> Seq Scan on tbl_client_industries ci (cost=0.00..1.24 rows=24 width=150)
-> Hash (cost=1.06..1.06 rows=6 width=150)
-> Seq Scan on tbl_client_types ct (cost=0.00..1.06 rows=6 width=150)
-> Hash (cost=1.27..1.27 rows=27 width=4)
-> Seq Scan on tbl_engineer_group_relationships egr (cost=0.00..1.27 rows=27 width=4)