explain.depesz.com

PostgreSQL's explain analyze made readable

Result: AOTK : Optimization for: plan #ILZd

Settings

Optimization path:

# exclusive inclusive rows x rows loops node
1. 0.433 6.138 ↑ 1.2 392 1

Nested Loop Left Join (cost=109.30..30,859.93 rows=478 width=345) (actual time=0.176..6.138 rows=392 loops=1)

2. 0.077 0.217 ↑ 1.2 392 1

Hash Left Join (cost=48.55..1,802.86 rows=478 width=111) (actual time=0.096..0.217 rows=392 loops=1)

  • Hash Cond: (wifiaeroscouttags.wat_mac = wifiaeroscouttagsassignmenthistory.watah_mac)
3. 0.072 0.093 ↑ 1.2 392 1

Bitmap Heap Scan on wifiaeroscouttags (cost=18.24..1,770.73 rows=478 width=7) (actual time=0.043..0.093 rows=392 loops=1)

  • Recheck Cond: (wat_active IS TRUE)
  • Heap Blocks: exact=12
4. 0.021 0.021 ↑ 1.2 392 1

Bitmap Index Scan on wat_active_mac_index (cost=0.00..18.12 rows=478 width=0) (actual time=0.021..0.021 rows=392 loops=1)

5. 0.002 0.047 ↑ 8.0 1 1

Hash (cost=30.21..30.21 rows=8 width=110) (actual time=0.047..0.047 rows=1 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
6. 0.001 0.045 ↑ 8.0 1 1

Nested Loop (cost=14.57..30.21 rows=8 width=110) (actual time=0.045..0.045 rows=1 loops=1)

7. 0.027 0.038 ↑ 8.0 1 1

Hash Join (cost=14.42..26.95 rows=8 width=82) (actual time=0.038..0.038 rows=1 loops=1)

  • Hash Cond: (nodeslogical.nl_id = wifiaeroscouttagsassignmenthistory.watah_nl_id)
8. 0.004 0.004 ↑ 40.0 5 1

Seq Scan on nodeslogical (cost=0.00..12.00 rows=200 width=72) (actual time=0.003..0.004 rows=5 loops=1)

9. 0.002 0.007 ↑ 8.0 1 1

Hash (cost=14.32..14.32 rows=8 width=18) (actual time=0.007..0.007 rows=1 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
10. 0.003 0.005 ↑ 8.0 1 1

Bitmap Heap Scan on wifiaeroscouttagsassignmenthistory (cost=4.19..14.32 rows=8 width=18) (actual time=0.005..0.005 rows=1 loops=1)

  • Recheck Cond: (watah_end IS NULL)
  • Heap Blocks: exact=1
11. 0.002 0.002 ↑ 8.0 1 1

Bitmap Index Scan on watah_unique_active_logical (cost=0.00..4.18 rows=8 width=0) (actual time=0.002..0.002 rows=1 loops=1)

12. 0.006 0.006 ↑ 1.0 1 1

Index Scan using entities_pkey on entities (cost=0.15..0.41 rows=1 width=36) (actual time=0.005..0.006 rows=1 loops=1)

  • Index Cond: (e_id = nodeslogical.nl_e_id)
13. 0.000 5.488 ↓ 0.0 0 392

Limit (cost=60.76..60.76 rows=1 width=185) (actual time=0.014..0.014 rows=0 loops=392)

14. 1.176 5.488 ↓ 0.0 0 392

Sort (cost=60.76..60.77 rows=7 width=185) (actual time=0.014..0.014 rows=0 loops=392)

  • Sort Key: wifiaeroscouttagspositionhistory.watph_from DESC
  • Sort Method: top-N heapsort Memory: 25kB
15. 1.159 4.312 ↓ 2.1 15 392

Hash Left Join (cost=34.51..60.72 rows=7 width=185) (actual time=0.003..0.011 rows=15 loops=392)

  • Hash Cond: (wifiaeroscouttagspositionhistory.watph_wap_basemac = wifiaccesspointsassignmenthistory.wapah_basemac)
16. 0.777 3.136 ↓ 2.1 15 392

Hash Left Join (cost=7.46..33.64 rows=7 width=31) (actual time=0.003..0.008 rows=15 loops=392)

  • Hash Cond: (wifiaeroscouttagspositionhistory.watph_wap_basemac = wifiaccesspoints.wap_basemac)
17. 1.960 2.352 ↓ 2.1 15 392

Bitmap Heap Scan on wifiaeroscouttagspositionhistory (cost=4.35..30.49 rows=7 width=22) (actual time=0.002..0.006 rows=15 loops=392)

  • Recheck Cond: (watph_wat_mac = wifiaeroscouttags.wat_mac)
  • Filter: (watph_wap_basemac IS NOT NULL)
  • Rows Removed by Filter: 2
  • Heap Blocks: exact=1778
18. 0.392 0.392 ↓ 2.0 18 392

Bitmap Index Scan on watph_wat_mac_index (cost=0.00..4.35 rows=9 width=0) (actual time=0.001..0.001 rows=18 loops=392)

  • Index Cond: (watph_wat_mac = wifiaeroscouttags.wat_mac)
19. 0.002 0.007 ↑ 1.0 5 1

Hash (cost=3.05..3.05 rows=5 width=15) (actual time=0.006..0.007 rows=5 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
20. 0.005 0.005 ↑ 1.0 5 1

Seq Scan on wifiaccesspoints (cost=0.00..3.05 rows=5 width=15) (actual time=0.002..0.005 rows=5 loops=1)

21. 0.002 0.017 ↑ 4.0 2 1

Hash (cost=26.95..26.95 rows=8 width=160) (actual time=0.016..0.017 rows=2 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
22. 0.007 0.015 ↑ 4.0 2 1

Hash Right Join (cost=14.42..26.95 rows=8 width=160) (actual time=0.012..0.015 rows=2 loops=1)

  • Hash Cond: (nodeslogical_1.nl_id = wifiaccesspointsassignmenthistory.wapah_nl_id)
23. 0.002 0.002 ↑ 40.0 5 1

Seq Scan on nodeslogical nodeslogical_1 (cost=0.00..12.00 rows=200 width=158) (actual time=0.001..0.002 rows=5 loops=1)

24. 0.001 0.006 ↑ 4.0 2 1

Hash (cost=14.32..14.32 rows=8 width=10) (actual time=0.005..0.006 rows=2 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
25. 0.003 0.005 ↑ 4.0 2 1

Bitmap Heap Scan on wifiaccesspointsassignmenthistory (cost=4.19..14.32 rows=8 width=10) (actual time=0.004..0.005 rows=2 loops=1)

  • Recheck Cond: (wapah_end IS NULL)
  • Heap Blocks: exact=1
26. 0.002 0.002 ↑ 4.0 2 1

Bitmap Index Scan on wapah_unique_active_logical (cost=0.00..4.18 rows=8 width=0) (actual time=0.001..0.002 rows=2 loops=1)