explain.depesz.com

PostgreSQL's explain analyze made readable

Result: ndSn

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

Sort (cost=478,013.93..478,013.93 rows=2 width=1,484) (actual rows= loops=)

  • Sort Key: base.id
2. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=325,558.75..478,013.92 rows=2 width=1,484) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=325,558.33..478,005.74 rows=2 width=1,114) (actual rows= loops=)

  • Hash Cond: (course.id = course_11.joinid)
4. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=315,114.15..467,560.30 rows=2 width=1,050) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=315,113.73..467,557.86 rows=1 width=1,050) (actual rows= loops=)

  • Join Filter: (cfid_2.courseid = course.id)
6. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=306,088.61..457,141.15 rows=1 width=986) (actual rows= loops=)

  • Join Filter: (cfid_1.courseid = course.id)
7. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=298,414.60..448,553.81 rows=1 width=922) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=298,414.18..448,551.31 rows=1 width=766) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=298,413.75..448,548.80 rows=1 width=610) (actual rows= loops=)

  • Join Filter: (cfid.userid = auser.id)
10. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,710.67..347,408.01 rows=1 width=546) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,710.38..347,406.06 rows=1 width=544) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Nested Loop (cost=242,709.96..347,401.27 rows=1 width=520) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,709.68..347,398.87 rows=1 width=480) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,709.25..347,303.82 rows=1 width=481) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,708.81..347,208.77 rows=1 width=474) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,708.38..347,113.72 rows=1 width=467) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Nested Loop (cost=242,707.94..347,018.67 rows=1 width=460) (actual rows= loops=)

  • Join Filter: (organisation.id = org_type_15.organisationid)
18. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,707.51..298,697.54 rows=508 width=476) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=242,707.07..250,412.93 rows=508 width=469) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=242,706.65..249,311.50 rows=508 width=424) (actual rows= loops=)

  • Hash Cond: (local_order_payment.classid = seatreservationitem.id)
  • Join Filter: ((local_order_payment.class)::text = 'promotion'::text)
21. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=241,747.66..248,351.17 rows=508 width=431) (actual rows= loops=)

  • Hash Cond: (COALESCE(sessions.roomid, event.roomid) = studio_hierarchy.roomid)
22. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=241,668.14..248,264.67 rows=508 width=439) (actual rows= loops=)

23. 0.000 0.000 ↓ 0.0

Merge Right Join (cost=241,667.72..247,156.62 rows=508 width=415) (actual rows= loops=)

  • Merge Cond: (mdl_facetoface_signups.id = local_order_item_event.signupid)
24. 0.000 0.000 ↓ 0.0

Unique (cost=34,159.60..36,595.73 rows=243,613 width=24) (actual rows= loops=)

25. 0.000 0.000 ↓ 0.0

Sort (cost=34,159.60..34,768.63 rows=243,613 width=24) (actual rows= loops=)

  • Sort Key: mdl_facetoface_signups.id, mdl_facetoface_signups.sessionid, mdl_facetoface_signups.userid
26. 0.000 0.000 ↓ 0.0

Append (cost=0.00..7,365.26 rows=243,613 width=24) (actual rows= loops=)

27. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_facetoface_signups (cost=0.00..4,814.41 rows=237,041 width=24) (actual rows= loops=)

28. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_f2f_deleted_signups (cost=0.00..114.72 rows=6,572 width=24) (actual rows= loops=)

29. 0.000 0.000 ↓ 0.0

Sort (cost=207,508.12..207,509.39 rows=508 width=415) (actual rows= loops=)

  • Sort Key: local_order_item_event.signupid
30. 0.000 0.000 ↓ 0.0

Hash Join (cost=160,881.82..207,485.29 rows=508 width=415) (actual rows= loops=)

  • Hash Cond: (event.facetofaceid = facetoface.id)
31. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=160,598.23..207,200.34 rows=517 width=390) (actual rows= loops=)

  • Hash Cond: (base.itemclassid = session_role_user_teacher.sessionid)
32. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=140,045.59..186,646.37 rows=507 width=358) (actual rows= loops=)

33. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=140,045.30..185,652.39 rows=507 width=358) (actual rows= loops=)

34. 0.000 0.000 ↓ 0.0

Hash Join (cost=140,045.00..184,658.40 rows=507 width=358) (actual rows= loops=)

  • Hash Cond: (base.shiptoorgid = organisation.id)
35. 0.000 0.000 ↓ 0.0

Hash Join (cost=49,172.44..92,759.92 rows=272,227 width=239) (actual rows= loops=)

  • Hash Cond: (base.itemclassid = event.sessionid)
36. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=48,304.61..87,809.37 rows=272,088 width=223) (actual rows= loops=)

  • Hash Cond: (base.itemclassid = facetoface_sessions_dates.sessionid)
37. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=39,250.16..78,040.39 rows=272,088 width=191) (actual rows= loops=)

  • Hash Cond: (base.prospectid = prospect.id)
38. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=39,240.72..77,316.70 rows=272,088 width=154) (actual rows= loops=)

  • Hash Cond: (base.itemclassid = sessions.id)
39. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=38,206.03..75,567.64 rows=272,088 width=146) (actual rows= loops=)

  • Hash Cond: (base.orderid = local_order.id)
40. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=33,121.17..58,819.54 rows=272,088 width=127) (actual rows= loops=)

  • Hash Cond: (base.paymentid = local_order_payment.id)
41. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=15,194.10..28,121.22 rows=272,088 width=112) (actual rows= loops=)

  • Hash Cond: (local_order_item_event.orderlineid = base.id)
42. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_order_item_event local_order_item_event (cost=0.00..5,263.88 rows=272,088 width=24) (actual rows= loops=)

43. 0.000 0.000 ↓ 0.0

Hash (cost=8,228.24..8,228.24 rows=256,549 width=96) (actual rows= loops=)

44. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_order_items base (cost=0.00..8,228.24 rows=256,549 width=96) (actual rows= loops=)

  • Filter: ((bookingstatus <> 10) AND ((itemclass)::text = 'event'::text))
45. 0.000 0.000 ↓ 0.0

Hash (cost=8,462.70..8,462.70 rows=515,470 width=23) (actual rows= loops=)

46. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_order_payment local_order_payment (cost=0.00..8,462.70 rows=515,470 width=23) (actual rows= loops=)

47. 0.000 0.000 ↓ 0.0

Hash (cost=2,873.38..2,873.38 rows=108,838 width=35) (actual rows= loops=)

48. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_order local_order (cost=0.00..2,873.38 rows=108,838 width=35) (actual rows= loops=)

49. 0.000 0.000 ↓ 0.0

Hash (cost=761.53..761.53 rows=21,853 width=16) (actual rows= loops=)

50. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_facetoface_sessions sessions (cost=0.00..761.53 rows=21,853 width=16) (actual rows= loops=)

51. 0.000 0.000 ↓ 0.0

Hash (cost=6.42..6.42 rows=242 width=45) (actual rows= loops=)

52. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_prospects prospect (cost=0.00..6.42 rows=242 width=45) (actual rows= loops=)

53. 0.000 0.000 ↓ 0.0

Hash (cost=9,051.94..9,051.94 rows=200 width=40) (actual rows= loops=)

54. 0.000 0.000 ↓ 0.0

Subquery Scan on facetoface_sessions_dates (cost=8,997.94..9,051.94 rows=200 width=40) (actual rows= loops=)

55. 0.000 0.000 ↓ 0.0

HashAggregate (cost=8,997.94..9,049.94 rows=200 width=40) (actual rows= loops=)

  • Group Key: mdl_facetoface_sessions_dates.sessionid
56. 0.000 0.000 ↓ 0.0

HashAggregate (cost=1,339.47..1,617.96 rows=27,849 width=40) (actual rows= loops=)

  • Group Key: mdl_facetoface_sessions_dates.sessionid, ((mdl_facetoface_sessions_dates.timestart)::text)
57. 0.000 0.000 ↓ 0.0

Append (cost=0.00..1,200.22 rows=27,849 width=40) (actual rows= loops=)

58. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_facetoface_sessions_dates (cost=0.00..574.48 rows=24,232 width=40) (actual rows= loops=)

59. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_core_snapshots lcsfsd (cost=0.00..347.25 rows=3,617 width=40) (actual rows= loops=)

  • Filter: ((tablename)::text = 'facetoface_sessions_dates'::text)
60. 0.000 0.000 ↓ 0.0

Hash (cost=556.26..556.26 rows=24,926 width=24) (actual rows= loops=)

61. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_event event (cost=0.00..556.26 rows=24,926 width=24) (actual rows= loops=)

62. 0.000 0.000 ↓ 0.0

Hash (cost=90,867.59..90,867.59 rows=398 width=119) (actual rows= loops=)

63. 0.000 0.000 ↓ 0.0

Nested Loop (cost=3,799.25..90,867.59 rows=398 width=119) (actual rows= loops=)

64. 0.000 0.000 ↓ 0.0

Nested Loop (cost=3,798.83..87,973.46 rows=398 width=79) (actual rows= loops=)

65. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.00..6.05 rows=1 width=64) (actual rows= loops=)

66. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_course_info_field course_27_fielddefault (cost=0.00..4.42 rows=1 width=32) (actual rows= loops=)

  • Filter: (id = 27)
67. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_org_type_info_field org_type_27_fielddefault (cost=0.00..1.61 rows=1 width=32) (actual rows= loops=)

  • Filter: (id = 27)
68. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on mdl_org_type_info_data salesarea (cost=3,798.83..87,963.43 rows=398 width=15) (actual rows= loops=)

  • Recheck Cond: (fieldid = 15)
  • Filter: (data = '1041'::text)
69. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on mdl_org_type_info_data_import_fieldid_idx1 (cost=0.00..3,798.74 rows=205,640 width=0) (actual rows= loops=)

  • Index Cond: (fieldid = 15)
70. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_import_pkey1 on mdl_org organisation (cost=0.42..7.27 rows=1 width=40) (actual rows= loops=)

  • Index Cond: (id = salesarea.organisationid)
71. 0.000 0.000 ↓ 0.0

Index Scan using mdl_locaordeinvo_id_pk on mdl_local_order_invoice invoice (cost=0.29..1.96 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = base.invoiceid)
72. 0.000 0.000 ↓ 0.0

Index Scan using mdl_locaordeinvo_id_pk on mdl_local_order_invoice credit (cost=0.29..1.96 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = base.creditid)
73. 0.000 0.000 ↓ 0.0

Hash (cost=20,430.41..20,430.41 rows=9,778 width=40) (actual rows= loops=)

74. 0.000 0.000 ↓ 0.0

Subquery Scan on session_role_user_teacher (cost=17,790.35..20,430.41 rows=9,778 width=40) (actual rows= loops=)

75. 0.000 0.000 ↓ 0.0

HashAggregate (cost=17,790.35..20,332.63 rows=9,778 width=40) (actual rows= loops=)

  • Group Key: roles.sessionid
76. 0.000 0.000 ↓ 0.0

Hash Join (cost=13,851.53..14,931.55 rows=10,302 width=23) (actual rows= loops=)

  • Hash Cond: (roles.userid = u.id)
77. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_facetoface_session_roles roles (cost=0.00..204.97 rows=10,302 width=16) (actual rows= loops=)

  • Filter: (roleid = 4)
78. 0.000 0.000 ↓ 0.0

Hash (cost=11,514.68..11,514.68 rows=127,268 width=23) (actual rows= loops=)

79. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_user u (cost=0.00..11,514.68 rows=127,268 width=23) (actual rows= loops=)

80. 0.000 0.000 ↓ 0.0

Hash (cost=238.82..238.82 rows=3,582 width=41) (actual rows= loops=)

81. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_facetoface facetoface (cost=0.00..238.82 rows=3,582 width=41) (actual rows= loops=)

82. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_import_pkey1 on mdl_org reporganisation (cost=0.42..2.18 rows=1 width=40) (actual rows= loops=)

  • Index Cond: (id = local_order.bookerorgid)
83. 0.000 0.000 ↓ 0.0

Hash (cost=45.34..45.34 rows=2,734 width=16) (actual rows= loops=)

84. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_studio_hierarchy studio_hierarchy (cost=0.00..45.34 rows=2,734 width=16) (actual rows= loops=)

85. 0.000 0.000 ↓ 0.0

Hash (cost=605.11..605.11 rows=28,311 width=16) (actual rows= loops=)

86. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_local_seat_rsrv_iface_order_items seatreservationitem (cost=0.00..605.11 rows=28,311 width=16) (actual rows= loops=)

87. 0.000 0.000 ↓ 0.0

Index Scan using dt_user_pkey on mdl_user auser (cost=0.42..2.17 rows=1 width=53) (actual rows= loops=)

  • Index Cond: (id = local_order_item_event.userid)
88. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_type_info_data_import_organisationid_idx1 on mdl_org_type_info_data org_type_35 (cost=0.43..95.03 rows=2 width=15) (actual rows= loops=)

  • Index Cond: (organisationid = organisation.id)
  • Filter: (fieldid = 35)
89. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_type_info_data_import_organisationid_idx1 on mdl_org_type_info_data org_type_15 (cost=0.43..95.11 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (organisationid = base.shiptoorgid)
  • Filter: ((data ~~* '%1041%'::text) AND (fieldid = 15))
90. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_type_info_data_import_organisationid_idx1 on mdl_org_type_info_data org_type_6 (cost=0.43..95.03 rows=2 width=15) (actual rows= loops=)

  • Index Cond: (organisationid = organisation.id)
  • Filter: (fieldid = 6)
91. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_type_info_data_import_organisationid_idx1 on mdl_org_type_info_data org_type_7 (cost=0.43..95.03 rows=2 width=15) (actual rows= loops=)

  • Index Cond: (organisationid = organisation.id)
  • Filter: (fieldid = 7)
92. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_type_info_data_import_organisationid_idx1 on mdl_org_type_info_data org_type_4 (cost=0.43..95.03 rows=2 width=15) (actual rows= loops=)

  • Index Cond: (organisationid = organisation.id)
  • Filter: (fieldid = 4)
93. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_type_info_data_import_organisationid_idx1 on mdl_org_type_info_data org_type_27 (cost=0.43..95.03 rows=2 width=15) (actual rows= loops=)

  • Index Cond: (organisationid = organisation.id)
  • Filter: (fieldid = 27)
94. 0.000 0.000 ↓ 0.0

Index Scan using mdl_cour_id_pk on mdl_course course (cost=0.28..2.41 rows=1 width=48) (actual rows= loops=)

  • Index Cond: (id = facetoface.course)
95. 0.000 0.000 ↓ 0.0

Index Scan using mdl_org_import_pkey1 on mdl_org studio (cost=0.42..4.79 rows=1 width=40) (actual rows= loops=)

  • Index Cond: (id = studio_hierarchy.orgid)
96. 0.000 0.000 ↓ 0.0

Index Scan using mdl_locaseatrsrvifacorde_id_pk on mdl_local_seat_rsrv_iface_orders seatreservationorder (cost=0.29..1.95 rows=1 width=18) (actual rows= loops=)

  • Index Cond: (id = seatreservationitem.orderid)
97. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=55,703.08..99,777.38 rows=60,596 width=72) (actual rows= loops=)

  • Group Key: cfid.userid, ((cfid.data)::character varying)
98. 0.000 0.000 ↓ 0.0

Sort (cost=55,703.08..55,978.03 rows=109,978 width=72) (actual rows= loops=)

  • Sort Key: cfid.userid, ((cfid.data)::character varying)
99. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=4,443.91..41,982.65 rows=109,978 width=72) (actual rows= loops=)

  • Hash Cond: (cfid.id = cfidp.dataid)
100. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_user_info_data cfid (cost=0.00..30,743.45 rows=109,978 width=172) (actual rows= loops=)

  • Filter: (fieldid = 2)
101. 0.000 0.000 ↓ 0.0

Hash (cost=2,221.18..2,221.18 rows=109,418 width=40) (actual rows= loops=)

102. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_user_info_data_param cfidp (cost=0.00..2,221.18 rows=109,418 width=40) (actual rows= loops=)

103. 0.000 0.000 ↓ 0.0

Index Scan using mdl_userinfodata_usefie_uix on mdl_user_info_data user_10 (cost=0.42..2.51 rows=1 width=164) (actual rows= loops=)

  • Index Cond: ((userid = auser.id) AND (fieldid = 10))
104. 0.000 0.000 ↓ 0.0

Index Scan using mdl_userinfodata_usefie_uix on mdl_user_info_data user_60 (cost=0.42..2.51 rows=1 width=164) (actual rows= loops=)

  • Index Cond: ((userid = auser.id) AND (fieldid = 60))
105. 0.000 0.000 ↓ 0.0

HashAggregate (cost=7,674.01..8,514.59 rows=3,233 width=72) (actual rows= loops=)

  • Group Key: cfid_1.courseid, (cfid_1.data)::character varying
106. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=5,445.58..6,752.95 rows=3,612 width=73) (actual rows= loops=)

  • Hash Cond: (cfidp_1.dataid = cfid_1.id)
107. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_course_info_data_param cfidp_1 (cost=0.00..1,157.80 rows=56,980 width=41) (actual rows= loops=)

108. 0.000 0.000 ↓ 0.0

Hash (cost=5,400.43..5,400.43 rows=3,612 width=297) (actual rows= loops=)

109. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on mdl_course_info_data cfid_1 (cost=68.41..5,400.43 rows=3,612 width=297) (actual rows= loops=)

  • Recheck Cond: (fieldid = 24)
110. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on mdl_courinfodata_fie_ix (cost=0.00..67.51 rows=3,612 width=0) (actual rows= loops=)

  • Index Cond: (fieldid = 24)
111. 0.000 0.000 ↓ 0.0

HashAggregate (cost=9,025.12..10,305.88 rows=4,926 width=72) (actual rows= loops=)

  • Group Key: cfid_2.courseid, (cfid_2.data)::character varying
112. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=6,214.27..7,521.64 rows=5,896 width=73) (actual rows= loops=)

  • Hash Cond: (cfidp_2.dataid = cfid_2.id)
113. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_course_info_data_param cfidp_2 (cost=0.00..1,157.80 rows=56,980 width=41) (actual rows= loops=)

114. 0.000 0.000 ↓ 0.0

Hash (cost=6,140.57..6,140.57 rows=5,896 width=297) (actual rows= loops=)

115. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on mdl_course_info_data cfid_2 (cost=114.11..6,140.57 rows=5,896 width=297) (actual rows= loops=)

  • Recheck Cond: (fieldid = 8)
116. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on mdl_courinfodata_fie_ix (cost=0.00..112.64 rows=5,896 width=0) (actual rows= loops=)

  • Index Cond: (fieldid = 8)
117. 0.000 0.000 ↓ 0.0

Index Scan using mdl_facesignstat_sig_ix on mdl_facetoface_signups_status status (cost=0.42..2.42 rows=2 width=16) (actual rows= loops=)

  • Index Cond: (signupid = mdl_facetoface_signups.id)
  • Filter: (superceded = 0)
118. 0.000 0.000 ↓ 0.0

Hash (cost=10,382.21..10,382.21 rows=4,957 width=72) (actual rows= loops=)

119. 0.000 0.000 ↓ 0.0

Subquery Scan on course_11 (cost=9,043.82..10,382.21 rows=4,957 width=72) (actual rows= loops=)

120. 0.000 0.000 ↓ 0.0

HashAggregate (cost=9,043.82..10,332.64 rows=4,957 width=72) (actual rows= loops=)

  • Group Key: cfid_3.courseid, (cfid_3.data)::character varying
121. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=6,221.49..7,528.87 rows=5,941 width=73) (actual rows= loops=)

  • Hash Cond: (cfidp_3.dataid = cfid_3.id)
122. 0.000 0.000 ↓ 0.0

Seq Scan on mdl_course_info_data_param cfidp_3 (cost=0.00..1,157.80 rows=56,980 width=41) (actual rows= loops=)

123. 0.000 0.000 ↓ 0.0

Hash (cost=6,147.23..6,147.23 rows=5,941 width=297) (actual rows= loops=)

124. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on mdl_course_info_data cfid_3 (cost=114.46..6,147.23 rows=5,941 width=297) (actual rows= loops=)

  • Recheck Cond: (fieldid = 11)
125. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on mdl_courinfodata_fie_ix (cost=0.00..112.98 rows=5,941 width=0) (actual rows= loops=)

  • Index Cond: (fieldid = 11)
126. 0.000 0.000 ↓ 0.0

Index Scan using mdl_courinfodata_fiecou_uix on mdl_course_info_data course_27 (cost=0.42..4.07 rows=1 width=289) (actual rows= loops=)

  • Index Cond: ((fieldid = 27) AND (courseid = course.id))