explain.depesz.com

PostgreSQL's explain analyze made readable

Result: hCbs

Settings

Optimization(s) for this plan:

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

Unique (cost=54.69..64.07 rows=150 width=497) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Sort (cost=54.69..55.07 rows=150 width=497) (actual rows= loops=)

  • Sort Key: ((a.last_hub_data -> 'epoch_time_millis'::text)) DESC NULLS LAST, ((a.id)::text), a.asset_name, a.asset_state, a.asset_created_by, a.date_created, a.last_modified, ((a.asset_hierarchy)::text), a.asset_description, u.user_id, u.user_name, u.first_name, u.last_name, h.hub_id, h.hub_name, h.status, ((a.last_hub_data -> 'latitude'::text)), ((a.last_hub_data -> 'longitude'::text)), ((a.last_hub_data -> 'speed'::text)), ((a.last_hub_data -> 'temperature'::text)), ((a.last_hub_data -> 'gps_heading_direction'::text)), ((a.attributes -> 'vehicleType'::text)), ((a.attributes -> 'vehicleLicense'::text)), ((a.attributes -> 'homeBaseId'::text))
3. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=16.09..49.27 rows=150 width=497) (actual rows= loops=)

  • Hash Cond: (a.asset_owner = u.user_id)
  • Join Filter: (a.asset_state = 'ACTIVE'::text)
4. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=9.32..37.22 rows=150 width=351) (actual rows= loops=)

  • Hash Cond: (a.hub_id = h.id)
5. 0.000 0.000 ↓ 0.0

Seq Scan on asset a (cost=0.00..27.50 rows=150 width=328) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Hash (cost=8.03..8.03 rows=103 width=55) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Seq Scan on hub h (cost=0.00..8.03 rows=103 width=55) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Hash (cost=5.23..5.23 rows=123 width=41) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Seq Scan on users u (cost=0.00..5.23 rows=123 width=41) (actual rows= loops=)