explain.depesz.com

PostgreSQL's explain analyze made readable

Result: JLfV

Settings
# exclusive inclusive rows x rows loops node
1. 0.514 27.653 ↑ 1.1 359 1

Sort (cost=7,050.26..7,051.26 rows=402 width=480) (actual time=27.625..27.653 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, product.product_name, product.product_number, product_uom_conversions.uom_type_ids, claim_product.distributor_company_id, company.company_name, company.company_number, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate))), ('DEFAULT'::enum.price_tier), claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, contract_amend_version.contract_amend_version_id, (COALESCE(contract_family_1.contract_title, contract_family.contract_title)), ((((((contract_family_1.contract_sequence)::text || '.R'::text) || ((count(1)))::text) || '.A'::text) || ((count(1)))::text)), contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, (CASE WHEN (contract_item.rebate_direct_type = 'FIXED_RATE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_direct_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_direct_value / (tuomc_1.rate / suomc_1.rate)) WHEN (contract_item.rebate_direct_decimal_model = 'PERCENT'::enum.decimal_model) THEN contract_item.rebate_direct_value ELSE NULL::numeric END WHEN (contract_item.rebate_direct_type = 'FIXED_PRICE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_direct_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_direct_value / (tuomc_1.rate / suomc_1.rate)) ELSE NULL::numeric END ELSE NULL::numeric END), contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, (CASE WHEN (contract_item.rebate_deviated_type = 'FIXED_RATE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_deviated_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_deviated_value / (tuomc_1.rate / suomc_1.rate)) WHEN (contract_item.rebate_deviated_decimal_model = 'PERCENT'::enum.decimal_model) THEN contract_item.rebate_deviated_value ELSE NULL::numeric END WHEN (contract_item.rebate_deviated_type = 'FIXED_PRICE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_deviated_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_deviated_value / (tuomc_1.rate / suomc_1.rate)) ELSE NULL::numeric END ELSE NULL::numeric END), (COALESCE(claim_product.distributor_invoice_number, cpl.distributor_invoice_number)), ((cpo.display_order)::integer), cpo.display_order
  • Sort Key: cpo.display_order
  • Sort Method: quicksort Memory: 210kB
  • Buffers: shared hit=8621
2. 0.495 27.139 ↑ 1.1 359 1

Hash Left Join (cost=3,772.38..7,032.87 rows=402 width=480) (actual time=19.538..27.139 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, product.product_name, product.product_number, product_uom_conversions.uom_type_ids, claim_product.distributor_company_id, company.company_name, company.company_number, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate))), ('DEFAULT'::enum.price_tier), claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, contract_amend_version.contract_amend_version_id, COALESCE(contract_family_1.contract_title, contract_family.contract_title), (((((contract_family_1.contract_sequence)::text || '.R'::text) || ((count(1)))::text) || '.A'::text) || ((count(1)))::text), contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, CASE WHEN (contract_item.rebate_direct_type = 'FIXED_RATE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_direct_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_direct_value / (tuomc_1.rate / suomc_1.rate)) WHEN (contract_item.rebate_direct_decimal_model = 'PERCENT'::enum.decimal_model) THEN contract_item.rebate_direct_value ELSE NULL::numeric END WHEN (contract_item.rebate_direct_type = 'FIXED_PRICE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_direct_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_direct_value / (tuomc_1.rate / suomc_1.rate)) ELSE NULL::numeric END ELSE NULL::numeric END, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, CASE WHEN (contract_item.rebate_deviated_type = 'FIXED_RATE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_deviated_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_deviated_value / (tuomc_1.rate / suomc_1.rate)) WHEN (contract_item.rebate_deviated_decimal_model = 'PERCENT'::enum.decimal_model) THEN contract_item.rebate_deviated_value ELSE NULL::numeric END WHEN (contract_item.rebate_deviated_type = 'FIXED_PRICE'::enum.rebate_value_type) THEN CASE WHEN (contract_item.rebate_deviated_decimal_model = 'NUMERIC'::enum.decimal_model) THEN (contract_item.rebate_deviated_value / (tuomc_1.rate / suomc_1.rate)) ELSE NULL::numeric END ELSE NULL::numeric END, COALESCE(claim_product.distributor_invoice_number, cpl.distributor_invoice_number), (cpo.display_order)::integer, cpo.display_order
  • Inner Unique: true
  • Hash Cond: (claim_product.claim_product_id = cpl.claim_product_id)
  • Buffers: shared hit=8621
3. 0.269 26.631 ↑ 1.1 359 1

Hash Left Join (cost=3,745.63..6,975.92 rows=402 width=426) (actual time=19.496..26.631 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, product.product_name, product.product_number, ('DEFAULT'::enum.price_tier), product_uom_conversions.uom_type_ids, suomc_1.rate, tuomc_1.rate, cpo.display_order, contract_family_1.contract_title, contract_family_1.contract_sequence, contract_amend_version.contract_amend_version_id, (count(1)), (count(1)), contract_family.contract_title, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Inner Unique: true
  • Hash Cond: (claim.contract_sequence = contract_family.contract_sequence)
  • Buffers: shared hit=8621
4. 0.451 14.225 ↑ 1.1 359 1

Nested Loop Left Join (cost=2,639.36..5,868.59 rows=402 width=398) (actual time=7.304..14.225 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, product.product_name, product.product_number, ('DEFAULT'::enum.price_tier), product_uom_conversions.uom_type_ids, suomc_1.rate, tuomc_1.rate, cpo.display_order, contract_family_1.contract_title, contract_family_1.contract_sequence, contract_amend_version.contract_amend_version_id, (count(1)), (count(1)), ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Buffers: shared hit=8039
5. 0.200 8.389 ↑ 1.1 359 1

Hash Left Join (cost=2,631.62..2,666.15 rows=402 width=346) (actual time=7.245..8.389 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, product.product_name, product.product_number, ('DEFAULT'::enum.price_tier), product_uom_conversions.uom_type_ids, suomc_1.rate, tuomc_1.rate, cpo.display_order, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Hash Cond: ((claim_product.claim_id = claim_product_order.claim_id) AND (claim_product.claim_product_id = cpo.claim_product_id))
  • Buffers: shared hit=1577
6. 0.344 8.180 ↑ 1.1 359 1

Hash Left Join (cost=2,624.83..2,656.33 rows=402 width=354) (actual time=7.227..8.180 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, product.product_name, product.product_number, ('DEFAULT'::enum.price_tier), product_uom_conversions.uom_type_ids, suomc_1.rate, tuomc_1.rate, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Hash Cond: ((claim_product.product_id = pro_1.product_id) AND (contract_item.uom_type_id = suomc_1.uom_type_id) AND (claim_product.uom_type_id = tuomc_1.uom_type_id))
  • Buffers: shared hit=1575
7. 0.231 4.349 ↑ 1.1 359 1

Hash Join (cost=2,418.10..2,429.02 rows=402 width=360) (actual time=3.726..4.349 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, contract_item.uom_type_id, product.product_name, product.product_number, ('DEFAULT'::enum.price_tier), product_uom_conversions.uom_type_ids, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Inner Unique: true
  • Hash Cond: (claim_product.product_id = product_uom_conversions.product_id)
  • Buffers: shared hit=1545
8. 0.332 3.123 ↑ 1.1 359 1

Merge Left Join (cost=2,373.11..2,382.99 rows=391 width=344) (actual time=2.725..3.123 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, contract_item.uom_type_id, product.product_name, product.product_number, product.product_id, ('DEFAULT'::enum.price_tier), ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Merge Cond: ((claim_product.uom_type_id = tuomc.uom_type_id) AND (claim_product_price.price_id = price_default.price_id))
  • Buffers: shared hit=1534
9. 0.372 2.791 ↓ 1.0 359 1

Sort (cost=1,725.65..1,726.54 rows=357 width=324) (actual time=2.722..2.791 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, contract_item.uom_type_id, product.product_name, product.product_number, product.product_id, claim_product_price.price_id
  • Sort Key: claim_product.uom_type_id, claim_product_price.price_id
  • Sort Method: quicksort Memory: 210kB
  • Buffers: shared hit=1534
10. 0.151 2.419 ↓ 1.0 359 1

Hash Left Join (cost=90.82..1,710.51 rows=357 width=324) (actual time=0.774..2.419 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, contract_item.uom_type_id, product.product_name, product.product_number, product.product_id, claim_product_price.price_id
  • Inner Unique: true
  • Hash Cond: (claim_product.claim_product_id = claim_product_price.claim_product_id)
  • Buffers: shared hit=1534
11. 0.186 2.258 ↓ 1.0 359 1

Hash Join (cost=89.46..1,708.22 rows=357 width=308) (actual time=0.759..2.258 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, contract_item.uom_type_id, product.product_name, product.product_number, product.product_id
  • Inner Unique: true
  • Hash Cond: (claim_product.product_id = product.product_id)
  • Buffers: shared hit=1533
12. 0.215 1.850 ↓ 1.0 359 1

Nested Loop Left Join (cost=58.90..1,676.71 rows=357 width=260) (actual time=0.532..1.850 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number, contract_item.won, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_direct_value, contract_item.rebate_deviated_type, contract_item.rebate_deviated_decimal_model, contract_item.rebate_deviated_value, contract_item.contract_id, contract_item.uom_type_id
  • Inner Unique: true
  • Buffers: shared hit=1512
13. 0.164 0.917 ↓ 1.0 359 1

Hash Left Join (cost=58.48..580.91 rows=357 width=203) (actual time=0.521..0.917 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence, company.company_name, company.company_number
  • Inner Unique: true
  • Hash Cond: (claim_product.distributor_company_id = company.company_id)
  • Buffers: shared hit=76
14. 0.128 0.297 ↓ 1.0 359 1

Nested Loop (cost=11.11..532.60 rows=357 width=173) (actual time=0.058..0.297 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.product_id, claim_product.distributor_company_id, claim_product.uom_type_id, claim_product.rebate_calculated_rate, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.resolve_date, claim_product.claimant_contract_name, claim_product.contract_item_id, claim_product.distributor_invoice_number, claim_product.claim_id, claim.contract_sequence
  • Buffers: shared hit=50
15. 0.013 0.013 ↑ 1.0 1 1

Index Scan using claim_pkey on client_stonyfield.claim (cost=0.42..3.44 rows=1 width=20) (actual time=0.012..0.013 rows=1 loops=1)

  • Output: claim.claim_id, claim.invoice_id, claim.claim_state, claim.claim_sequence, claim.transaction_type, claim.contract_sequence, claim.claim_tag
  • Index Cond: (claim.claim_id = '0d2047b6-df31-4607-a081-a886c0e45a32'::uuid)
  • Buffers: shared hit=4
16. 0.123 0.156 ↓ 1.0 359 1

Bitmap Heap Scan on client_stonyfield.claim_product (cost=10.69..525.59 rows=357 width=169) (actual time=0.043..0.156 rows=359 loops=1)

  • Output: claim_product.claim_product_id, claim_product.claim_id, claim_product.product_id, claim_product.uom_type_id, claim_product.rebate_requested_quantity, claim_product.rebate_requested_rate, claim_product.rebate_allowed_quantity, claim_product.rebate_allowed_rate, claim_product.distributor_company_id, claim_product.contract_item_id, claim_product.claimant_contract_name, claim_product.resolve_date, claim_product.rebate_calculated_rate, claim_product.distributor_invoice_number
  • Recheck Cond: (claim_product.claim_id = '0d2047b6-df31-4607-a081-a886c0e45a32'::uuid)
  • Heap Blocks: exact=41
  • Buffers: shared hit=46
17. 0.033 0.033 ↓ 1.0 359 1

Bitmap Index Scan on claim_product_claim_id_idx (cost=0.00..10.60 rows=357 width=0) (actual time=0.032..0.033 rows=359 loops=1)

  • Index Cond: (claim_product.claim_id = '0d2047b6-df31-4607-a081-a886c0e45a32'::uuid)
  • Buffers: shared hit=5
18. 0.231 0.456 ↑ 1.0 950 1

Hash (cost=35.50..35.50 rows=950 width=46) (actual time=0.456..0.456 rows=950 loops=1)

  • Output: company.company_name, company.company_number, company.company_id
  • Buckets: 1024 Batches: 1 Memory Usage: 81kB
  • Buffers: shared hit=26
19. 0.225 0.225 ↑ 1.0 950 1

Seq Scan on client_stonyfield.company (cost=0.00..35.50 rows=950 width=46) (actual time=0.004..0.225 rows=950 loops=1)

  • Output: company.company_name, company.company_number, company.company_id
  • Buffers: shared hit=26
20. 0.718 0.718 ↑ 1.0 1 359

Index Scan using contract_item_pkey on client_stonyfield.contract_item (cost=0.42..3.07 rows=1 width=73) (actual time=0.002..0.002 rows=1 loops=359)

  • Output: contract_item.contract_item_id, contract_item.contract_id, contract_item.product_id, contract_item.grouping_id, contract_item.estimated_quantity, contract_item.uom_type_id, contract_item.rebate_deviated_value, contract_item.rebate_deviated_type, contract_item.inactive_override, contract_item.rebate_direct_value, contract_item.rebate_direct_type, contract_item.rebate_direct_decimal_model, contract_item.rebate_deviated_decimal_model, contract_item.won
  • Index Cond: (claim_product.contract_item_id = contract_item.contract_item_id)
  • Buffers: shared hit=1436
21. 0.101 0.222 ↑ 1.0 425 1

Hash (cost=25.25..25.25 rows=425 width=48) (actual time=0.222..0.222 rows=425 loops=1)

  • Output: product.product_name, product.product_number, product.product_id
  • Buckets: 1024 Batches: 1 Memory Usage: 42kB
  • Buffers: shared hit=21
22. 0.121 0.121 ↑ 1.0 425 1

Seq Scan on client_stonyfield.product (cost=0.00..25.25 rows=425 width=48) (actual time=0.005..0.121 rows=425 loops=1)

  • Output: product.product_name, product.product_number, product.product_id
  • Buffers: shared hit=21
23. 0.004 0.010 ↑ 1.0 16 1

Hash (cost=1.16..1.16 rows=16 width=32) (actual time=0.010..0.010 rows=16 loops=1)

  • Output: claim_product_price.claim_product_id, claim_product_price.price_id
  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=1
24. 0.006 0.006 ↑ 1.0 16 1

Seq Scan on client_stonyfield.claim_product_price (cost=0.00..1.16 rows=16 width=32) (actual time=0.003..0.006 rows=16 loops=1)

  • Output: claim_product_price.claim_product_id, claim_product_price.price_id
  • Buffers: shared hit=1
25. 0.000 0.000 ↓ 0.0 0

Sort (cost=647.46..649.11 rows=659 width=68) (never executed)

  • Output: ('DEFAULT'::enum.price_tier), price_default.price_id, tuomc.uom_type_id, ((CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate)))
  • Sort Key: tuomc.uom_type_id, price_default.price_id
26. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=568.32..616.61 rows=659 width=68) (never executed)

  • Output: ('DEFAULT'::enum.price_tier), price_default.price_id, tuomc.uom_type_id, (CASE WHEN (pm.math_operation_value IS NULL) THEN price_default.price WHEN (pm.math_operation IS NULL) THEN price_default.price WHEN (pm.math_operation = 'ADD'::enum.math_operation) THEN (price_default.price + pm.math_operation_value) WHEN (pm.math_operation = 'SUBTRACT'::enum.math_operation) THEN (price_default.price - pm.math_operation_value) WHEN (pm.math_operation = 'MULTIPLY'::enum.math_operation) THEN (price_default.price * pm.math_operation_value) ELSE price_default.price END / (tuomc.rate / suomc.rate))
  • Hash Cond: (tuomc.product_id = pro.product_id)
27. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.product_uom_conversion tuomc (cost=0.00..23.74 rows=1,274 width=37) (never executed)

  • Output: tuomc.product_id, tuomc.uom_type_id, tuomc.rate
28. 0.000 0.000 ↓ 0.0 0

Hash (cost=565.57..565.57 rows=220 width=118) (never executed)

  • Output: ('DEFAULT'::enum.price_tier), price_default.product_id, price_default.price_id, price_default.price, suomc.product_id, suomc.rate, pm.math_operation_value, pm.math_operation, pro.product_id
29. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=91.81..565.57 rows=220 width=118) (never executed)

  • Output: ('DEFAULT'::enum.price_tier), price_default.product_id, price_default.price_id, price_default.price, suomc.product_id, suomc.rate, pm.math_operation_value, pm.math_operation, pro.product_id
  • Inner Unique: true
  • Hash Cond: (suomc.product_id = pro.product_id)
30. 0.000 0.000 ↓ 0.0 0

Hash Left Join (cost=64.85..538.02 rows=220 width=102) (never executed)

  • Output: ('DEFAULT'::enum.price_tier), price_default.product_id, price_default.price_id, price_default.price, suomc.product_id, suomc.rate, pm.math_operation_value, pm.math_operation
  • Inner Unique: true
  • Hash Cond: (price_default.price_id = pm.price_id)
31. 0.000 0.000 ↓ 0.0 0

Hash Join (cost=42.85..515.45 rows=220 width=66) (never executed)

  • Output: ('DEFAULT'::enum.price_tier), price_default.product_id, price_default.price_id, price_default.price, suomc.product_id, suomc.rate
  • Inner Unique: true
  • Hash Cond: ((price_default.product_id = suomc.product_id) AND (price_default.uom_type_id = suomc.uom_type_id))
32. 0.000 0.000 ↓ 0.0 0

Append (cost=0.00..395.62 rows=14,662 width=61) (never executed)

33. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.price_default (cost=0.00..9.42 rows=342 width=58) (never executed)

  • Output: 'DEFAULT'::enum.price_tier, price_default.product_id, price_default.uom_type_id, price_default.price_id, price_default.price
34. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.price_sale (cost=0.00..343.03 rows=12,903 width=60) (never executed)

  • Output: 'SALE'::enum.price_tier, price_sale.product_id, price_sale.uom_type_id, price_sale.price_id, price_sale.price
35. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.price_company (cost=0.00..14.20 rows=420 width=84) (never executed)

  • Output: 'COMPANY'::enum.price_tier, price_company.product_id, price_company.uom_type_id, price_company.price_id, price_company.price
36. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.price_list (cost=0.00..14.60 rows=460 width=84) (never executed)

  • Output: 'LIST'::enum.price_tier, price_list.product_id, price_list.uom_type_id, price_list.price_id, price_list.price
37. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.price_class (cost=0.00..14.37 rows=537 width=58) (never executed)

  • Output: 'CLASS'::enum.price_tier, price_class.product_id, price_class.uom_type_id, price_class.price_id, price_class.price
38. 0.000 0.000 ↓ 0.0 0

Hash (cost=23.74..23.74 rows=1,274 width=37) (never executed)

  • Output: suomc.product_id, suomc.uom_type_id, suomc.rate
39. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.product_uom_conversion suomc (cost=0.00..23.74 rows=1,274 width=37) (never executed)

  • Output: suomc.product_id, suomc.uom_type_id, suomc.rate
40. 0.000 0.000 ↓ 0.0 0

Hash (cost=19.00..19.00 rows=240 width=52) (never executed)

  • Output: pm.price_id, pm.math_operation_value, pm.math_operation
41. 0.000 0.000 ↓ 0.0 0

Seq Scan on client_stonyfield.price_modified pm (cost=0.00..19.00 rows=240 width=52) (never executed)

  • Output: pm.price_id, pm.math_operation_value, pm.math_operation
  • Filter: upper_inf(pm.active_range)
42. 0.000 0.000 ↓ 0.0 0

Hash (cost=21.65..21.65 rows=425 width=16) (never executed)

  • Output: pro.product_id
43. 0.000 0.000 ↓ 0.0 0

Index Only Scan using product_pkey on client_stonyfield.product pro (cost=0.27..21.65 rows=425 width=16) (never executed)

  • Output: pro.product_id
  • Heap Fetches: 0
44. 0.093 0.995 ↑ 1.0 425 1

Hash (cost=39.67..39.67 rows=425 width=48) (actual time=0.995..0.995 rows=425 loops=1)

  • Output: product_uom_conversions.uom_type_ids, product_uom_conversions.product_id
  • Buckets: 1024 Batches: 1 Memory Usage: 57kB
  • Buffers: shared hit=11
45. 0.069 0.902 ↑ 1.0 425 1

Subquery Scan on product_uom_conversions (cost=30.11..39.67 rows=425 width=48) (actual time=0.696..0.902 rows=425 loops=1)

  • Output: product_uom_conversions.uom_type_ids, product_uom_conversions.product_id
  • Buffers: shared hit=11
46. 0.688 0.833 ↑ 1.0 425 1

HashAggregate (cost=30.11..35.42 rows=425 width=48) (actual time=0.695..0.833 rows=425 loops=1)

  • Output: product_uom_conversion.product_id, array_agg(product_uom_conversion.uom_type_id)
  • Group Key: product_uom_conversion.product_id
  • Buffers: shared hit=11
47. 0.145 0.145 ↑ 1.0 1,274 1

Seq Scan on client_stonyfield.product_uom_conversion (cost=0.00..23.74 rows=1,274 width=32) (actual time=0.008..0.145 rows=1,274 loops=1)

  • Output: product_uom_conversion.product_id, product_uom_conversion.uom_type_id, product_uom_conversion.rate
  • Buffers: shared hit=11
48. 1.221 3.487 ↓ 1.0 3,824 1

Hash (cost=139.90..139.90 rows=3,819 width=58) (actual time=3.487..3.487 rows=3,824 loops=1)

  • Output: pro_1.product_id, suomc_1.rate, suomc_1.uom_type_id, tuomc_1.rate, tuomc_1.uom_type_id
  • Buckets: 4096 Batches: 1 Memory Usage: 372kB
  • Buffers: shared hit=30
49. 1.086 2.266 ↓ 1.0 3,824 1

Hash Join (cost=70.00..139.90 rows=3,819 width=58) (actual time=1.062..2.266 rows=3,824 loops=1)

  • Output: pro_1.product_id, suomc_1.rate, suomc_1.uom_type_id, tuomc_1.rate, tuomc_1.uom_type_id
  • Hash Cond: (tuomc_1.product_id = pro_1.product_id)
  • Buffers: shared hit=30
50. 0.129 0.129 ↑ 1.0 1,274 1

Seq Scan on client_stonyfield.product_uom_conversion tuomc_1 (cost=0.00..23.74 rows=1,274 width=37) (actual time=0.004..0.129 rows=1,274 loops=1)

  • Output: tuomc_1.product_id, tuomc_1.uom_type_id, tuomc_1.rate
  • Buffers: shared hit=11
51. 0.314 1.051 ↑ 1.0 1,274 1

Hash (cost=54.08..54.08 rows=1,274 width=53) (actual time=1.051..1.051 rows=1,274 loops=1)

  • Output: pro_1.product_id, suomc_1.rate, suomc_1.product_id, suomc_1.uom_type_id
  • Buckets: 2048 Batches: 1 Memory Usage: 123kB
  • Buffers: shared hit=19
52. 0.451 0.737 ↑ 1.0 1,274 1

Hash Join (cost=26.96..54.08 rows=1,274 width=53) (actual time=0.168..0.737 rows=1,274 loops=1)

  • Output: pro_1.product_id, suomc_1.rate, suomc_1.product_id, suomc_1.uom_type_id
  • Inner Unique: true
  • Hash Cond: (suomc_1.product_id = pro_1.product_id)
  • Buffers: shared hit=19
53. 0.125 0.125 ↑ 1.0 1,274 1

Seq Scan on client_stonyfield.product_uom_conversion suomc_1 (cost=0.00..23.74 rows=1,274 width=37) (actual time=0.002..0.125 rows=1,274 loops=1)

  • Output: suomc_1.product_id, suomc_1.uom_type_id, suomc_1.rate
  • Buffers: shared hit=11
54. 0.077 0.161 ↑ 1.0 425 1

Hash (cost=21.65..21.65 rows=425 width=16) (actual time=0.161..0.161 rows=425 loops=1)

  • Output: pro_1.product_id
  • Buckets: 1024 Batches: 1 Memory Usage: 28kB
  • Buffers: shared hit=8
55. 0.084 0.084 ↑ 1.0 425 1

Index Only Scan using product_pkey on client_stonyfield.product pro_1 (cost=0.27..21.65 rows=425 width=16) (actual time=0.010..0.084 rows=425 loops=1)

  • Output: pro_1.product_id
  • Heap Fetches: 0
  • Buffers: shared hit=8
56. 0.000 0.009 ↓ 0.0 0 1

Hash (cost=5.30..5.30 rows=100 width=40) (actual time=0.009..0.009 rows=0 loops=1)

  • Output: claim_product_order.claim_id, cpo.display_order, cpo.claim_product_id
  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
  • Buffers: shared hit=2
57. 0.001 0.009 ↓ 0.0 0 1

Nested Loop (cost=0.28..5.30 rows=100 width=40) (actual time=0.009..0.009 rows=0 loops=1)

  • Output: claim_product_order.claim_id, cpo.display_order, cpo.claim_product_id
  • Buffers: shared hit=2
58. 0.008 0.008 ↓ 0.0 0 1

Index Scan using claim_product_order_pkey on client_stonyfield.claim_product_order (cost=0.28..3.29 rows=1 width=60) (actual time=0.008..0.008 rows=0 loops=1)

  • Output: claim_product_order.claim_id, claim_product_order.item_ids
  • Index Cond: (claim_product_order.claim_id = '0d2047b6-df31-4607-a081-a886c0e45a32'::uuid)
  • Buffers: shared hit=2
59. 0.000 0.000 ↓ 0.0 0

Function Scan on pg_catalog.unnest cpo (cost=0.00..1.00 rows=100 width=24) (never executed)

  • Output: cpo.claim_product_id, cpo.display_order
  • Function Call: unnest(claim_product_order.item_ids)
60. 0.000 5.385 ↑ 1.0 1 359

Nested Loop Left Join (cost=7.73..7.96 rows=1 width=68) (actual time=0.014..0.015 rows=1 loops=359)

  • Output: contract_family_1.contract_title, contract_family_1.contract_sequence, contract_amend_version.contract_amend_version_id, (count(1)), (count(1))
  • Buffers: shared hit=6462
61. 0.359 4.308 ↑ 1.0 1 359

Nested Loop Left Join (cost=4.30..4.49 rows=1 width=84) (actual time=0.011..0.012 rows=1 loops=359)

  • Output: contract_family_1.contract_title, contract_family_1.contract_sequence, contract_amend_version.contract_amend_version_id, contract_amend_version.contract_renew_version_id, contract_amend_version.create_timestamp, (count(1))
  • Buffers: shared hit=5026
62. 0.359 2.872 ↑ 1.0 1 359

Nested Loop (cost=0.99..1.15 rows=1 width=100) (actual time=0.007..0.008 rows=1 loops=359)

  • Output: contract_family_1.contract_title, contract_family_1.contract_sequence, contract_renew_version.contract_family_id, contract_renew_version.create_timestamp, contract_amend_version.contract_amend_version_id, contract_amend_version.contract_renew_version_id, contract_amend_version.create_timestamp
  • Inner Unique: true
  • Buffers: shared hit=3590
63. 0.359 1.795 ↑ 1.0 1 359

Nested Loop (cost=0.70..0.80 rows=1 width=64) (actual time=0.005..0.005 rows=1 loops=359)

  • Output: contract_renew_version.contract_family_id, contract_renew_version.create_timestamp, contract_amend_version.contract_amend_version_id, contract_amend_version.contract_renew_version_id, contract_amend_version.create_timestamp
  • Inner Unique: true
  • Buffers: shared hit=2513
64. 0.718 0.718 ↑ 1.0 1 359

Index Scan using contract_amend_version_pkey on client_stonyfield.contract_amend_version (cost=0.41..0.45 rows=1 width=40) (actual time=0.002..0.002 rows=1 loops=359)

  • Output: contract_amend_version.contract_amend_version_id, contract_amend_version.contract_renew_version_id, contract_amend_version.contract_state, contract_amend_version.contract_amend_version_parent_id, contract_amend_version.contract_name, contract_amend_version.contact_name, contract_amend_version.contact_email, contract_amend_version.contact_phone, contract_amend_version.create_timestamp
  • Index Cond: (contract_item.contract_id = contract_amend_version.contract_amend_version_id)
  • Buffers: shared hit=1436
65. 0.718 0.718 ↑ 1.0 1 359

Index Scan using contract_renew_version_pkey on client_stonyfield.contract_renew_version (cost=0.29..0.34 rows=1 width=40) (actual time=0.002..0.002 rows=1 loops=359)

  • Output: contract_renew_version.contract_renew_version_id, contract_renew_version.contract_family_id, contract_renew_version.date_range, contract_renew_version.create_timestamp, contract_renew_version.dead
  • Index Cond: (contract_renew_version.contract_renew_version_id = contract_amend_version.contract_renew_version_id)
  • Buffers: shared hit=1077
66. 0.718 0.718 ↑ 1.0 1 359

Index Scan using contract_family_pkey on client_stonyfield.contract_family contract_family_1 (cost=0.29..0.35 rows=1 width=52) (actual time=0.002..0.002 rows=1 loops=359)

  • Output: contract_family_1.contract_family_id, contract_family_1.client_id, contract_family_1.contractee_company_id, contract_family_1.contractee_grouping_id, contract_family_1.creator_id, contract_family_1.contract_sequence, contract_family_1.cost_basis_type, contract_family_1.contract_type, contract_family_1.contract_title, contract_family_1.contract_template_id, contract_family_1.payment_calendar_id, contract_family_1.catch_all, contract_family_1.accrual_quantity_source, contract_family_1.import_contract_number
  • Index Cond: (contract_family_1.contract_family_id = contract_renew_version.contract_family_id)
  • Buffers: shared hit=1077
67. 0.359 1.077 ↑ 1.0 1 359

Aggregate (cost=3.31..3.32 rows=1 width=8) (actual time=0.003..0.003 rows=1 loops=359)

  • Output: count(1)
  • Buffers: shared hit=1436
68. 0.718 0.718 ↑ 1.0 1 359

Index Scan using contract_renew_version_contract_family_id_idx on client_stonyfield.contract_renew_version crv2_1 (cost=0.29..3.31 rows=1 width=0) (actual time=0.002..0.002 rows=1 loops=359)

  • Output: crv2_1.contract_renew_version_id, crv2_1.contract_family_id, crv2_1.date_range, crv2_1.create_timestamp, crv2_1.dead
  • Index Cond: (contract_renew_version.contract_family_id = crv2_1.contract_family_id)
  • Filter: (crv2_1.create_timestamp < contract_renew_version.create_timestamp)
  • Rows Removed by Filter: 1
  • Buffers: shared hit=1436
69. 0.359 1.077 ↑ 1.0 1 359

Aggregate (cost=3.44..3.45 rows=1 width=8) (actual time=0.003..0.003 rows=1 loops=359)

  • Output: count(1)
  • Buffers: shared hit=1436
70. 0.718 0.718 ↓ 0.0 0 359

Index Scan using contract_amend_version_contract_renew_version_id_idx1 on client_stonyfield.contract_amend_version cav2_1 (cost=0.41..3.43 rows=1 width=0) (actual time=0.002..0.002 rows=0 loops=359)

  • Output: cav2_1.contract_amend_version_id, cav2_1.contract_renew_version_id, cav2_1.contract_state, cav2_1.contract_amend_version_parent_id, cav2_1.contract_name, cav2_1.contact_name, cav2_1.contact_email, cav2_1.contact_phone, cav2_1.create_timestamp
  • Index Cond: (contract_amend_version.contract_renew_version_id = cav2_1.contract_renew_version_id)
  • Filter: (cav2_1.create_timestamp < contract_amend_version.create_timestamp)
  • Rows Removed by Filter: 1
  • Buffers: shared hit=1436
71. 5.347 12.137 ↓ 1.0 23,308 1

Hash (cost=815.01..815.01 rows=23,301 width=36) (actual time=12.136..12.137 rows=23,308 loops=1)

  • Output: contract_family.contract_title, contract_family.contract_sequence
  • Buckets: 32768 Batches: 1 Memory Usage: 1851kB
  • Buffers: shared hit=582
72. 6.790 6.790 ↓ 1.0 23,308 1

Seq Scan on client_stonyfield.contract_family (cost=0.00..815.01 rows=23,301 width=36) (actual time=0.005..6.790 rows=23,308 loops=1)

  • Output: contract_family.contract_title, contract_family.contract_sequence
  • Buffers: shared hit=582
73. 0.000 0.013 ↓ 0.0 0 1

Hash (cost=24.25..24.25 rows=200 width=48) (actual time=0.013..0.013 rows=0 loops=1)

  • Output: cpl.distributor_invoice_number, cpl.claim_product_id
  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
74. 0.002 0.013 ↓ 0.0 0 1

Subquery Scan on cpl (cost=19.75..24.25 rows=200 width=48) (actual time=0.013..0.013 rows=0 loops=1)

  • Output: cpl.distributor_invoice_number, cpl.claim_product_id
75. 0.004 0.011 ↓ 0.0 0 1

HashAggregate (cost=19.75..22.25 rows=200 width=48) (actual time=0.011..0.011 rows=0 loops=1)

  • Output: claim_product_location.claim_product_id, string_agg(claim_product_location.distributor_invoice_number, ', '::text)
  • Group Key: claim_product_location.claim_product_id
76. 0.007 0.007 ↓ 0.0 0 1

Seq Scan on client_stonyfield.claim_product_location (cost=0.00..16.50 rows=650 width=48) (actual time=0.007..0.007 rows=0 loops=1)

  • Output: claim_product_location.claim_product_id, claim_product_location.location_id, claim_product_location.quantity_ratio, claim_product_location.distributor_invoice_number