explain.depesz.com

PostgreSQL's explain analyze made readable

Result: IPus

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

Hash Join (cost=1,080,790.99..8,490,155.64 rows=2,827,458 width=246) (actual rows= loops=)

  • Hash Cond: (tirsroutepoint.pointid = tirspoint.pointid)
2. 0.000 0.000 ↓ 0.0

Hash Join (cost=1,065,676.15..8,285,628.97 rows=2,827,458 width=166) (actual rows= loops=)

  • Hash Cond: (tirsjourneypoint.routepointid = tirsroutepoint.routepointid)
3. 0.000 0.000 ↓ 0.0

Hash Join (cost=675,282.91..7,644,197.59 rows=2,827,458 width=111) (actual rows= loops=)

  • Hash Cond: (tirsjourneypoint.journeyid = tirsjourney.journeyid)
4. 0.000 0.000 ↓ 0.0

Seq Scan on tirsjourneypoint (cost=0.00..5,747,741.35 rows=318,106,335 width=38) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Hash (cost=674,563.58..674,563.58 rows=57,546 width=77) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Hash Semi Join (cost=497,921.48..674,563.58 rows=57,546 width=77) (actual rows= loops=)

  • Hash Cond: (tirsjourney.journeyid = tirsjourneydate.journeyid)
7. 0.000 0.000 ↓ 0.0

Seq Scan on tirsjourney (cost=0.00..153,762.78 rows=6,474,278 width=73) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Hash (cost=497,202.15..497,202.15 rows=57,546 width=4) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

HashAggregate (cost=496,051.23..496,626.69 rows=57,546 width=4) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Hash Join (cost=290,687.01..495,907.37 rows=57,546 width=4) (actual rows= loops=)

  • Hash Cond: (tirsjourneydate.journeyid = tirsjourney_1.journeyid)
11. 0.000 0.000 ↓ 0.0

Index Only Scan using uk_tirsjourneydate_date_journeyid on tirsjourneydate (cost=0.56..168,133.29 rows=3,245,527 width=4) (actual rows= loops=)

  • Index Cond: (date > '2019-04-15 00:00:00'::timestamp without time zone)
12. 0.000 0.000 ↓ 0.0

Hash (cost=289,251.51..289,251.51 rows=114,795 width=4) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Index Scan using ix_tirsjourney_irsid on tirsjourney tirsjourney_1 (cost=3.58..289,251.51 rows=114,795 width=4) (actual rows= loops=)

  • Index Cond: ((irsid)::text = ANY ('{42-E10-R-TL-1,42-E11-R-TL-1}'))
  • Filter: (duplicateof IS NULL)
14. 0.000 0.000 ↓ 0.0

Hash (cost=185,185.22..185,185.22 rows=9,216,322 width=55) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Seq Scan on tirsroutepoint (cost=0.00..185,185.22 rows=9,216,322 width=55) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Hash (cost=7,457.04..7,457.04 rows=303,904 width=80) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Seq Scan on tirspoint (cost=0.00..7,457.04 rows=303,904 width=80) (actual rows= loops=)