explain.depesz.com

PostgreSQL's explain analyze made readable

Result: qKB3

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

Nested Loop Left Join (cost=921.59..3,668.54 rows=412 width=10,036) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=921.30..3,320.10 rows=412 width=9,781) (actual rows= loops=)

  • Hash Cond: ((languagepr17_.language_id)::text = (language18_.id)::text)
3. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=920.10..3,313.23 rows=412 width=8,808) (actual rows= loops=)

  • Hash Cond: (shopgroup13_.map_icon_category = shopcatego19_.id)
4. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=450.38..2,838.10 rows=412 width=8,253) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=450.10..2,533.55 rows=412 width=7,466) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=449.81..2,185.12 rows=412 width=7,211) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=449.53..1,836.68 rows=412 width=6,956) (actual rows= loops=)

  • Hash Cond: (shopgroup13_.create_user_id = user14_.id)
8. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=432.17..1,813.66 rows=412 width=6,274) (actual rows= loops=)

  • Hash Cond: (this_.shop_group_id = shopgroup13_.id)
9. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=268.21..1,642.49 rows=412 width=6,197) (actual rows= loops=)

  • Hash Cond: (plan10_.museum_image_file_id = museummapf12_.id)
10. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=241.20..1,609.89 rows=412 width=5,964) (actual rows= loops=)

  • Hash Cond: (plan10_.location_id = baselocati11_.id)
11. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=164.42..1,527.46 rows=412 width=5,413) (actual rows= loops=)

  • Hash Cond: (mapshop9_.plan_id = plan10_.id)
12. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=149.72..1,507.10 rows=412 width=4,725) (actual rows= loops=)

  • Join Filter: (this_.location_id = location2_.id)
13. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=149.02..1,474.75 rows=412 width=623) (actual rows= loops=)

  • Hash Cond: (mapshop9_.linked_object_id = this_.id)
14. 0.000 0.000 ↓ 0.0

Seq Scan on map_object mapshop9_ (cost=0.00..1,265.45 rows=15,189 width=319) (actual rows= loops=)

  • Filter: ((class)::text = 'com.a1s.naviguide.MapShop'::text)
15. 0.000 0.000 ↓ 0.0

Hash (cost=143.87..143.87 rows=412 width=304) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on shops this_ (cost=11.57..143.87 rows=412 width=304) (actual rows= loops=)

  • Recheck Cond: (location_id = 2793)
  • Filter: (active AND (NOT deleted))
17. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on shops_location_id_idx (cost=0.00..11.46 rows=424 width=0) (actual rows= loops=)

  • Index Cond: (location_id = 2793)
18. 0.000 0.000 ↓ 0.0

Materialize (cost=0.70..26.18 rows=1 width=4,102) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.70..26.17 rows=1 width=4,102) (actual rows= loops=)

  • Join Filter: (group4_.parent_id = group5_.id)
20. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.70..24.88 rows=1 width=3,006) (actual rows= loops=)

21. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.56..16.71 rows=1 width=2,324) (actual rows= loops=)

22. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..16.47 rows=1 width=1,228) (actual rows= loops=)

23. 0.000 0.000 ↓ 0.0

Index Scan using location_pkey on location location2_ (cost=0.28..8.29 rows=1 width=546) (actual rows= loops=)

  • Index Cond: (id = 2793)
24. 0.000 0.000 ↓ 0.0

Materialize (cost=0.70..26.18 rows=1 width=4,102) (actual rows= loops=)

25. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.70..26.17 rows=1 width=4,102) (actual rows= loops=)

  • Join Filter: (group4_.parent_id = group5_.id)
26. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.70..24.88 rows=1 width=3,006) (actual rows= loops=)

27. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.56..16.71 rows=1 width=2,324) (actual rows= loops=)

28. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..16.47 rows=1 width=1,228) (actual rows= loops=)

29. 0.000 0.000 ↓ 0.0

Index Scan using location_pkey on location location2_ (cost=0.28..8.29 rows=1 width=546) (actual rows= loops=)

  • Index Cond: (id = 2793)
30. 0.000 0.000 ↓ 0.0

Index Scan using users_login_pkey on users_login user3_ (cost=0.14..8.16 rows=1 width=682) (actual rows= loops=)

  • Index Cond: (location2_.create_user_id = id)
31. 0.000 0.000 ↓ 0.0

Index Scan using groups_pkey on groups group4_ (cost=0.14..0.23 rows=1 width=1,096) (actual rows= loops=)

  • Index Cond: (user3_.group_id = id)
32. 0.000 0.000 ↓ 0.0

Index Scan using users_login_pkey on users_login user6_ (cost=0.14..8.16 rows=1 width=682) (actual rows= loops=)

  • Index Cond: (location2_.owner_id = id)
33. 0.000 0.000 ↓ 0.0

Seq Scan on groups group5_ (cost=0.00..1.13 rows=13 width=1,096) (actual rows= loops=)

34. 0.000 0.000 ↓ 0.0

Hash (cost=10.98..10.98 rows=298 width=688) (actual rows= loops=)

35. 0.000 0.000 ↓ 0.0

Seq Scan on plan plan10_ (cost=0.00..10.98 rows=298 width=688) (actual rows= loops=)

36. 0.000 0.000 ↓ 0.0

Hash (cost=65.79..65.79 rows=879 width=551) (actual rows= loops=)

37. 0.000 0.000 ↓ 0.0

Seq Scan on location baselocati11_ (cost=0.00..65.79 rows=879 width=551) (actual rows= loops=)

38. 0.000 0.000 ↓ 0.0

Hash (cost=21.45..21.45 rows=445 width=233) (actual rows= loops=)

39. 0.000 0.000 ↓ 0.0

Seq Scan on image_file museummapf12_ (cost=0.00..21.45 rows=445 width=233) (actual rows= loops=)

40. 0.000 0.000 ↓ 0.0

Hash (cost=106.76..106.76 rows=4,576 width=77) (actual rows= loops=)

41. 0.000 0.000 ↓ 0.0

Seq Scan on shop_group shopgroup13_ (cost=0.00..106.76 rows=4,576 width=77) (actual rows= loops=)

42. 0.000 0.000 ↓ 0.0

Hash (cost=15.49..15.49 rows=149 width=682) (actual rows= loops=)

43. 0.000 0.000 ↓ 0.0

Seq Scan on users_login user14_ (cost=0.00..15.49 rows=149 width=682) (actual rows= loops=)

44. 0.000 0.000 ↓ 0.0

Index Scan using uploaded_image_pkey on uploaded_image uploadedim15_ (cost=0.29..0.84 rows=1 width=255) (actual rows= loops=)

  • Index Cond: (shopgroup13_.icon = id)
45. 0.000 0.000 ↓ 0.0

Index Scan using uploaded_image_pkey on uploaded_image uploadedim16_ (cost=0.29..0.84 rows=1 width=255) (actual rows= loops=)

  • Index Cond: (shopgroup13_.image = id)
46. 0.000 0.000 ↓ 0.0

Index Scan using shop_group_idx on shop_group_language_depend_property languagepr17_ (cost=0.28..0.73 rows=1 width=787) (actual rows= loops=)

  • Index Cond: (shopgroup13_.id = shop_group)
47. 0.000 0.000 ↓ 0.0

Hash (cost=469.32..469.32 rows=32 width=555) (actual rows= loops=)

48. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.57..469.32 rows=32 width=555) (actual rows= loops=)

49. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.29..235.32 rows=32 width=300) (actual rows= loops=)

50. 0.000 0.000 ↓ 0.0

Seq Scan on shop_categories shopcatego19_ (cost=0.00..1.32 rows=32 width=45) (actual rows= loops=)

51. 0.000 0.000 ↓ 0.0

Index Scan using uploaded_image_pkey on uploaded_image uploadedim20_ (cost=0.29..7.30 rows=1 width=255) (actual rows= loops=)

  • Index Cond: (shopcatego19_.icon = id)
52. 0.000 0.000 ↓ 0.0

Index Scan using uploaded_image_pkey on uploaded_image uploadedim21_ (cost=0.29..7.30 rows=1 width=255) (actual rows= loops=)

  • Index Cond: (shopcatego19_.image = id)
53. 0.000 0.000 ↓ 0.0

Hash (cost=1.09..1.09 rows=9 width=973) (actual rows= loops=)

54. 0.000 0.000 ↓ 0.0

Seq Scan on language language18_ (cost=0.00..1.09 rows=9 width=973) (actual rows= loops=)

55. 0.000 0.000 ↓ 0.0

Index Scan using uploaded_image_pkey on uploaded_image uploadedim24_ (cost=0.29..0.84 rows=1 width=255) (actual rows= loops=)

  • Index Cond: (shopgroup13_.map_icon_self = id)