explain.depesz.com

PostgreSQL's explain analyze made readable

Result: nsw4

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

Subquery Scan on asdf (cost=4,063,114.51..4,705,817.65 rows=11,660,000 width=41) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=4,063,114.51..4,560,067.65 rows=11,660,000 width=37) (actual rows= loops=)

  • Group Key: serv_enabled.se_stcd, serv_enabled.se_rtocode, ola_mast.om_officename
3. 0.000 0.000 ↓ 0.0

Sort (cost=4,063,114.51..4,126,506.70 rows=25,356,876 width=37) (actual rows= loops=)

  • Sort Key: serv_enabled.se_stcd, serv_enabled.se_rtocode, ola_mast.om_officename
4. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=323.73..152,337.92 rows=25,356,876 width=37) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Hash Join (cost=323.44..3,104.95 rows=59,393 width=33) (actual rows= loops=)

  • Hash Cond: (serv_enabled.se_rtocode = ola_mast.om_officecd)
6. 0.000 0.000 ↓ 0.0

Seq Scan on serv_enabled (cost=0.00..2,550.03 rows=88,003 width=13) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Hash (cost=306.36..306.36 rows=1,366 width=26) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Seq Scan on ola_mast (cost=0.00..306.36 rows=1,366 width=26) (actual rows= loops=)

  • Filter: (((om_off_type)::text = ANY ('{R,U}'::text[])) AND ((om_postaladd4)::text = ANY ('{N,O}'::text[])))
9. 0.000 0.000 ↓ 0.0

Index Scan using indx_serv_enabled_history_seh_rtocode on serv_enabled_history (cost=0.29..1.71 rows=80 width=10) (actual rows= loops=)

  • Index Cond: (serv_enabled.se_rtocode = seh_rtocode)