explain.depesz.com

PostgreSQL's explain analyze made readable

Result: OPhf

Settings
# exclusive inclusive rows x rows loops node
1. 0.959 1.875 ↓ 94.0 94 1

Nested Loop Left Join (cost=8.46..196.37 rows=1 width=2,030) (actual time=0.195..1.875 rows=94 loops=1)

2. 0.122 0.916 ↓ 94.0 94 1

Nested Loop Left Join (cost=8.02..187.71 rows=1 width=1,579) (actual time=0.170..0.916 rows=94 loops=1)

3. 0.093 0.606 ↓ 94.0 94 1

Nested Loop Left Join (cost=7.58..174.80 rows=1 width=1,567) (actual time=0.163..0.606 rows=94 loops=1)

4. 0.018 0.409 ↓ 8.0 8 1

Nested Loop Left Join (cost=7.01..161.62 rows=1 width=1,538) (actual time=0.153..0.409 rows=8 loops=1)

5. 0.020 0.359 ↓ 8.0 8 1

Nested Loop Left Join (cost=6.58..148.72 rows=1 width=1,445) (actual time=0.143..0.359 rows=8 loops=1)

6. 0.007 0.315 ↓ 8.0 8 1

Nested Loop Left Join (cost=6.15..135.82 rows=1 width=1,166) (actual time=0.129..0.315 rows=8 loops=1)

7. 0.011 0.284 ↓ 8.0 8 1

Nested Loop Left Join (cost=5.71..126.58 rows=1 width=1,162) (actual time=0.121..0.284 rows=8 loops=1)

8. 0.014 0.249 ↓ 8.0 8 1

Nested Loop Left Join (cost=5.28..117.19 rows=1 width=1,100) (actual time=0.112..0.249 rows=8 loops=1)

9. 0.014 0.203 ↓ 8.0 8 1

Nested Loop Left Join (cost=4.71..108.59 rows=1 width=940) (actual time=0.104..0.203 rows=8 loops=1)

10. 0.006 0.171 ↓ 2.0 2 1

Nested Loop Left Join (cost=4.15..95.42 rows=1 width=873) (actual time=0.094..0.171 rows=2 loops=1)

11. 0.008 0.153 ↓ 2.0 2 1

Nested Loop Left Join (cost=3.71..82.51 rows=1 width=872) (actual time=0.084..0.153 rows=2 loops=1)

12. 0.007 0.135 ↓ 2.0 2 1

Nested Loop Left Join (cost=3.28..69.60 rows=1 width=860) (actual time=0.072..0.135 rows=2 loops=1)

13. 0.007 0.118 ↓ 2.0 2 1

Nested Loop Left Join (cost=2.85..56.70 rows=1 width=725) (actual time=0.063..0.118 rows=2 loops=1)

14. 0.004 0.097 ↓ 2.0 2 1

Nested Loop Left Join (cost=2.42..43.81 rows=1 width=659) (actual time=0.052..0.097 rows=2 loops=1)

15. 0.007 0.081 ↓ 2.0 2 1

Nested Loop (cost=1.99..35.35 rows=1 width=585) (actual time=0.044..0.081 rows=2 loops=1)

  • Join Filter: (order_addresses.order_id = order_application_users.order_id)
16. 0.004 0.058 ↓ 2.0 2 1

Nested Loop (cost=1.56..33.53 rows=1 width=543) (actual time=0.031..0.058 rows=2 loops=1)

17. 0.008 0.040 ↓ 2.0 2 1

Nested Loop (cost=0.99..30.82 rows=1 width=369) (actual time=0.021..0.040 rows=2 loops=1)

18. 0.018 0.018 ↑ 1.0 2 1

Index Scan using orders_pkey on orders (cost=0.56..13.90 rows=2 width=300) (actual time=0.010..0.018 rows=2 loops=1)

  • Index Cond: (id = ANY ('{26236857,27923671}'::integer[]))
19. 0.014 0.014 ↑ 1.0 1 2

Index Scan using order_addresses_order_id_address_id_unique on order_addresses (cost=0.43..8.45 rows=1 width=69) (actual time=0.007..0.007 rows=1 loops=2)

  • Index Cond: (order_id = orders.id)
  • Filter: (is_current IS TRUE)
20. 0.014 0.014 ↑ 1.0 1 2

Index Scan using orders_pkey on orders calculated_information (cost=0.56..2.70 rows=1 width=174) (actual time=0.007..0.007 rows=1 loops=2)

  • Index Cond: (order_id = order_addresses.order_id)
21. 0.016 0.016 ↑ 1.0 1 2

Index Scan using order_application_users_order_id_index on order_application_users (cost=0.43..1.81 rows=1 width=62) (actual time=0.007..0.008 rows=1 loops=2)

  • Index Cond: (order_id = calculated_information.order_id)
22. 0.012 0.012 ↑ 1.0 1 2

Index Scan using order_storekeepers_order_id_index on order_storekeepers storekeeper (cost=0.43..8.45 rows=1 width=82) (actual time=0.005..0.006 rows=1 loops=2)

  • Index Cond: (order_id = orders.id)
  • Filter: (is_current IS TRUE)
23. 0.014 0.014 ↓ 0.0 0 2

Index Scan using order_personal_shoppers_order_id_index on order_personal_shoppers personal_shopper (cost=0.42..12.88 rows=1 width=74) (actual time=0.007..0.007 rows=0 loops=2)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::bigint[])))
  • Filter: (is_current IS TRUE)
24. 0.010 0.010 ↓ 0.0 0 2

Index Scan using order_reference_point_pkey on order_reference_point (cost=0.43..12.89 rows=1 width=139) (actual time=0.005..0.005 rows=0 loops=2)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
25. 0.010 0.010 ↓ 0.0 0 2

Index Scan using order_partner_order_id_unique on order_partner (cost=0.43..12.90 rows=1 width=12) (actual time=0.005..0.005 rows=0 loops=2)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
26. 0.012 0.012 ↑ 1.0 1 2

Index Scan using order_store_zones_pkey on order_store_zones (cost=0.43..12.90 rows=1 width=5) (actual time=0.005..0.006 rows=1 loops=2)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
27. 0.018 0.018 ↓ 4.0 4 2

Index Scan using order_product_order_id_store_id_product_id_index on order_product (cost=0.56..13.16 rows=1 width=71) (actual time=0.007..0.009 rows=4 loops=2)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
28. 0.032 0.032 ↑ 1.0 1 8

Index Scan using order_product_detail_pkey on order_product_detail products (cost=0.56..8.58 rows=1 width=164) (actual time=0.004..0.004 rows=1 loops=8)

  • Index Cond: (order_product_id = order_product.id)
29. 0.024 0.024 ↓ 0.0 0 8

Index Scan using order_product_topping_detail_order_product_id_index on order_product_topping_detail toppings (cost=0.43..9.07 rows=32 width=66) (actual time=0.003..0.003 rows=0 loops=8)

  • Index Cond: (order_product_id = order_product.id)
30. 0.024 0.024 ↓ 0.0 0 8

Index Scan using order_product_topping_order_product_id_index on order_product_topping (cost=0.44..8.95 rows=29 width=8) (actual time=0.003..0.003 rows=0 loops=8)

  • Index Cond: (order_product_id = order_product.id)
31. 0.024 0.024 ↓ 0.0 0 8

Index Scan using order_whims_order_id_index on order_whims (cost=0.43..12.89 rows=1 width=283) (actual time=0.003..0.003 rows=0 loops=8)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
32. 0.032 0.032 ↑ 1.0 1 8

Index Scan using order_stores_order_id_index on order_stores (cost=0.43..12.89 rows=1 width=97) (actual time=0.003..0.004 rows=1 loops=8)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
33. 0.104 0.104 ↓ 12.0 12 8

Index Scan using order_modifications_order_id_index on order_modifications (cost=0.57..13.17 rows=1 width=33) (actual time=0.004..0.013 rows=12 loops=8)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
34. 0.188 0.188 ↓ 0.0 0 94

Index Scan using order_discounts_order_id_index on order_discounts (cost=0.43..12.90 rows=1 width=16) (actual time=0.002..0.002 rows=0 loops=94)

  • Index Cond: ((order_id = orders.id) AND (order_id = ANY ('{26236857,27923671}'::integer[])))
35. 0.000 0.000 ↓ 0.0 0 94

Index Scan using order_discount_details_order_discount_id_index on order_discount_details (cost=0.43..8.56 rows=7 width=42) (actual time=0.000..0.000 rows=0 loops=94)

  • Index Cond: (order_discount_id = order_discounts.id)