explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 4BUK

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

Hash Left Join (cost=10.63..3,745.51 rows=392 width=119) (actual rows= loops=)

  • Hash Cond: (d.device_id = sdm.device_id)
2. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=7.53..40.81 rows=392 width=63) (actual rows= loops=)

  • Hash Cond: (d.device_id = mpm.device_id)
3. 0.000 0.000 ↓ 0.0

Hash Right Join (cost=6.12..36.04 rows=392 width=54) (actual rows= loops=)

  • Hash Cond: (jd.child_device_id = d.device_id)
4. 0.000 0.000 ↓ 0.0

Seq Scan on joined_device jd (cost=0.00..25.70 rows=1,570 width=16) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Hash (cost=5.50..5.50 rows=50 width=46) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Seq Scan on device d (cost=0.00..5.50 rows=50 width=46) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Hash (cost=1.18..1.18 rows=18 width=17) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Seq Scan on meter_point_mapping mpm (cost=0.00..1.18 rows=18 width=17) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Hash (cost=2.49..2.49 rows=49 width=32) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Seq Scan on secure_device_map sdm (cost=0.00..2.49 rows=49 width=32) (actual rows= loops=)

11.          

SubPlan (for Hash Left Join)

12. 0.000 0.000 ↓ 0.0

Limit (cost=2.88..4.10 rows=1 width=9) (actual rows= loops=)

13.          

Initplan (for Limit)

14. 0.000 0.000 ↓ 0.0

Limit (cost=0.00..2.88 rows=1 width=8) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Seq Scan on device (cost=0.00..5.75 rows=2 width=8) (actual rows= loops=)

  • Filter: ((sms_id = d.sms_id) AND ((device_type)::text = 'ESME'::text))
16. 0.000 0.000 ↓ 0.0

Seq Scan on meter_point_mapping (cost=0.00..1.23 rows=1 width=9) (actual rows= loops=)

  • Filter: (device_id = $1)
17. 0.000 0.000 ↓ 0.0

Limit (cost=2.88..4.10 rows=1 width=9) (actual rows= loops=)

18.          

Initplan (for Limit)

19. 0.000 0.000 ↓ 0.0

Limit (cost=0.00..2.88 rows=1 width=8) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Seq Scan on device device_1 (cost=0.00..5.75 rows=2 width=8) (actual rows= loops=)

  • Filter: ((sms_id = d.sms_id) AND ((device_type)::text = 'GSME'::text))
21. 0.000 0.000 ↓ 0.0

Seq Scan on meter_point_mapping meter_point_mapping_1 (cost=0.00..1.23 rows=1 width=9) (actual rows= loops=)

  • Filter: (device_id = $3)
22. 0.000 0.000 ↓ 0.0

Limit (cost=0.00..1.23 rows=1 width=9) (actual rows= loops=)

23. 0.000 0.000 ↓ 0.0

Seq Scan on meter_point_mapping meter_point_mapping_2 (cost=0.00..1.23 rows=1 width=9) (actual rows= loops=)

  • Filter: (device_id = d.device_id)