explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 1F6T

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

Hash Right Join (cost=1.18..82,375,565.39 rows=52 width=609) (actual rows= loops=)

  • Hash Cond: (pv.prop_id = p.prop_id)
2. 0.000 0.000 ↓ 0.0

Seq Scan on t_prop_value pv (cost=0.00..15.80 rows=680 width=65) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Hash (cost=1.16..1.16 rows=1 width=4) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Seq Scan on t_prop p (cost=0.00..1.16 rows=1 width=4) (actual rows= loops=)

  • Filter: ((brief)::text = 'theme'::text)
5.          

SubPlan (forHash Right Join)

6. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.65..17.69 rows=1 width=13) (actual rows= loops=)

7.          

Initplan (forNested Loop)

8. 0.000 0.000 ↓ 0.0

Seq Scan on t_object_type ot (cost=0.00..1.09 rows=1 width=4) (actual rows= loops=)

  • Filter: ((brief)::text = 'THEME'::text)
9. 0.000 0.000 ↓ 0.0

Index Scan using t_image_link_object_id_idx on t_image_link til (cost=0.28..8.30 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (pv.prop_value_id = object_id)
  • Filter: (object_type_id = $0)
10. 0.000 0.000 ↓ 0.0

Index Scan using t_image_pkey on t_image i (cost=0.28..8.30 rows=1 width=21) (actual rows= loops=)

  • Index Cond: (image_id = til.image_id)
11. 0.000 0.000 ↓ 0.0

Aggregate (cost=1,584,127.41..1,584,127.42 rows=1 width=32) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Nested Loop (cost=41.83..58.16 rows=2 width=13) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Unique (cost=41.55..41.56 rows=2 width=8) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Sort (cost=41.55..41.55 rows=2 width=8) (actual rows= loops=)

  • Sort Key: opv.object_id
15. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on t_object_propval opv (cost=4.55..41.54 rows=2 width=8) (actual rows= loops=)

  • Recheck Cond: (prop_value_id = pv.prop_value_id)
  • Filter: ((object_type_id = 9) AND (prop_id = 41))
16. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on t_object_propval_prop_value_id_idx (cost=0.00..4.54 rows=35 width=0) (actual rows= loops=)

  • Index Cond: (prop_value_id = pv.prop_value_id)
17. 0.000 0.000 ↓ 0.0

Index Scan using t_cat_pkey on t_cat c (cost=0.28..8.30 rows=1 width=13) (actual rows= loops=)

  • Index Cond: (cat_id = opv.object_id)
18.          

SubPlan (forAggregate)

19. 0.000 0.000 ↓ 0.0

Aggregate (cost=792,034.61..792,034.62 rows=1 width=32) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on t_item i_1 (cost=6.18..779.04 rows=227 width=129) (actual rows= loops=)

  • Recheck Cond: (cat_id = c.cat_id)
21. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on t_item_cat_id_idx (cost=0.00..6.12 rows=227 width=0) (actual rows= loops=)

  • Index Cond: (cat_id = c.cat_id)
22.          

SubPlan (forAggregate)

23. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..17.70 rows=1 width=13) (actual rows= loops=)

  • Join Filter: (il.object_type_id = ot_1.object_type_id)
24. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..16.60 rows=1 width=21) (actual rows= loops=)

25. 0.000 0.000 ↓ 0.0

Index Scan using t_image_link_object_id_idx on t_image_link il (cost=0.28..8.30 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (object_id = i_1.item_id)
26. 0.000 0.000 ↓ 0.0

Index Scan using t_image_pkey on t_image i1 (cost=0.28..8.30 rows=1 width=21) (actual rows= loops=)

  • Index Cond: (image_id = il.image_id)
27. 0.000 0.000 ↓ 0.0

Seq Scan on t_object_type ot_1 (cost=0.00..1.09 rows=1 width=4) (actual rows= loops=)

  • Filter: ((brief)::text = 'SCHEMA'::text)
28. 0.000 0.000 ↓ 0.0

Index Scan using t_pline_item_id_index on t_pline pl (cost=0.42..16.27 rows=3 width=5) (actual rows= loops=)

  • Index Cond: (item_id = i_1.item_id)
29. 0.000 0.000 ↓ 0.0

Seq Scan on t_icode ic (cost=0.00..3,451.74 rows=1 width=13) (actual rows= loops=)

  • Filter: (item_id = i_1.item_id)