explain.depesz.com

PostgreSQL's explain analyze made readable

Result: spAM

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

Merge Join (cost=12,387.05..13,042.48 rows=1,453 width=106) (actual rows= loops=)

  • Merge Cond: ((ls.schedule_id = rs.schedule_id) AND (((ls.rn + 1)) = rs.rn))
2. 0.000 0.000 ↓ 0.0

Sort (cost=6,193.53..6,273.64 rows=32,045 width=55) (actual rows= loops=)

  • Sort Key: ls.schedule_id, ((ls.rn + 1))
3. 0.000 0.000 ↓ 0.0

Subquery Scan on ls (cost=0.29..3,795.31 rows=32,045 width=55) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

WindowAgg (cost=0.29..3,474.86 rows=32,045 width=127) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Index Scan using schedule_stop_idx1 on schedule_stop schds (cost=0.29..2,914.07 rows=32,045 width=51) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Sort (cost=6,193.53..6,273.64 rows=32,045 width=75) (actual rows= loops=)

  • Sort Key: rs.schedule_id, rs.rn
7. 0.000 0.000 ↓ 0.0

Subquery Scan on rs (cost=0.29..3,795.31 rows=32,045 width=75) (actual rows= loops=)

  • Filter: (rs.elapse_time IS NOT NULL)
8. 0.000 0.000 ↓ 0.0

WindowAgg (cost=0.29..3,474.86 rows=32,045 width=75) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Index Scan using schedule_stop_idx1 on schedule_stop schds_1 (cost=0.29..2,914.07 rows=32,045 width=67) (actual rows= loops=)