explain.depesz.com

PostgreSQL's explain analyze made readable

Result: XOlO

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Limit (cost=399,142.28..399,142.36 rows=10 width=24) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Unique (cost=399,142.28..399,142.36 rows=10 width=24) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Sort (cost=399,142.28..399,142.31 rows=10 width=24) (actual rows= loops=)

  • Sort Key: "Order".order_date DESC, "Order".order_uid
4. 0.000 0.000 ↓ 0.0

Gather (cost=263,608.07..399,142.12 rows=10 width=24) (actual rows= loops=)

  • Workers Planned: 2
5. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=262,608.07..398,141.12 rows=4 width=24) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=262,607.65..398,138.14 rows=4 width=24) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Nested Loop (cost=262,607.23..398,136.21 rows=4 width=24) (actual rows= loops=)

  • Join Filter: (("Order".order_uid = structure.order_uid) AND (("Order".person_id = '160d76cb-cb29-4657-9314-8e0285a54f2a'::uuid) OR ((structure.structure_code = 3179) AND (structure.structure_type_id = 3))))
8. 0.000 0.000 ↓ 0.0

Hash Join (cost=262,606.80..337,292.39 rows=83,240 width=56) (actual rows= loops=)

  • Hash Cond: (delivery.order_uid = "Order".order_uid)
9. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on delivery_mode delivery (cost=0.00..59,878.13 rows=1,071,413 width=16) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Hash (cost=258,626.42..258,626.42 rows=195,950 width=40) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Index Scan using order_order_number_idx on "order" "Order" (cost=0.43..258,626.42 rows=195,950 width=40) (actual rows= loops=)

  • Index Cond: (order_number <= 30755313)
  • Filter: ((order_date >= '2018-11-06 00:00:00+00'::timestamp with time zone) AND (order_date <= '2019-11-06 23:59:59.999+00'::timestamp with time zone) AND (business_model_id = 1) AND (company_id = 1) AND ((country_code)::text = 'PE'::text))
12. 0.000 0.000 ↓ 0.0

Index Scan using order_order_structure_fk on order_structure structure (cost=0.43..0.67 rows=3 width=24) (actual rows= loops=)

  • Index Cond: (order_uid = delivery.order_uid)
13. 0.000 0.000 ↓ 0.0

Index Only Scan using order_order_pending_reason_fk on order_pending_reason reason (cost=0.42..0.47 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (order_uid = "Order".order_uid)
14. 0.000 0.000 ↓ 0.0

Index Only Scan using order_order_payment_fk on order_payment payment (cost=0.42..0.74 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (order_uid = "Order".order_uid)