explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 6OAJ

Settings
# exclusive inclusive rows x rows loops node
1. 69.997 4,145.257 ↓ 13,985.0 13,985 1

Nested Loop (cost=143.79..56,135.78 rows=1 width=215) (actual time=5.029..4,145.257 rows=13,985 loops=1)

  • Join Filter: ((gf.forecast_min <= f.forecast) AND (gf.forecast_max >= f.forecast))
  • Rows Removed by Join Filter: 27985
2. 41.380 3,691.164 ↓ 24.3 12,003 1

Nested Loop (cost=143.79..52,667.94 rows=493 width=158) (actual time=4.971..3,691.164 rows=12,003 loops=1)

3. 82.931 84.893 ↓ 2.0 12,003 1

Bitmap Heap Scan on temp_gen_avg g (cost=143.36..19,983.50 rows=6,055 width=121) (actual time=3.574..84.893 rows=12,003 loops=1)

  • Recheck Cond: ((resourcenode)::text = 'MEC.ROLLHILL_1'::text)
  • Heap Blocks: exact=11472
4. 1.962 1.962 ↓ 2.0 12,003 1

Bitmap Index Scan on temp_gen_avg_idx2 (cost=0.00..141.84 rows=6,055 width=0) (actual time=1.962..1.962 rows=12,003 loops=1)

  • Index Cond: ((resourcenode)::text = 'MEC.ROLLHILL_1'::text)
5. 3,564.891 3,564.891 ↑ 1.0 1 12,003

Index Scan using t_forecast_idx on temp_forecast f (cost=0.43..5.39 rows=1 width=37) (actual time=0.296..0.297 rows=1 loops=12,003)

  • Index Cond: ((delivery_date = g.sced_date) AND (hr = (g.sced_hour)::numeric) AND ((zone)::text = (g.zone)::text) AND (forecast_type = g.dispatch_type))
6. 60.015 384.096 ↓ 1.5 3 12,003

Append (cost=0.00..7.00 rows=2 width=57) (actual time=0.023..0.032 rows=3 loops=12,003)

7. 0.000 0.000 ↓ 0.0 0 12,003

Seq Scan on dp_hist_gen_avg_forecast gf (cost=0.00..0.00 rows=1 width=182) (actual time=0.000..0.000 rows=0 loops=12,003)

  • Filter: ((p_region_id = 3) AND ((g.zone)::text = (zone)::text) AND (g.dispatch_type = (forecast_type)::text) AND (g.sced_year = sced_year) AND (g.sced_month = sced_month) AND (g.sced_dow = sced_day_of_week) AND (g.sced_hour = sced_hour))
8. 324.081 324.081 ↓ 3.0 3 12,003

Index Scan using dp_hist_gen_avg_forecast_miso_idx3_jm on dp_hist_gen_avg_forecast_miso gf_1 (cost=0.55..7.00 rows=1 width=57) (actual time=0.019..0.027 rows=3 loops=12,003)

  • Index Cond: ((sced_hour = g.sced_hour) AND (sced_month = g.sced_month) AND (sced_day_of_week = g.sced_dow) AND (sced_year = g.sced_year) AND ((forecast_type)::text = g.dispatch_type) AND ((zone)::text = (g.zone)::text))
  • Filter: (p_region_id = 3)
Planning time : 10.659 ms
Execution time : 4,150.983 ms