explain.depesz.com

PostgreSQL's explain analyze made readable

Result: dpfS

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

GroupAggregate (cost=20.74..1,362,463.96 rows=1 width=76) (actual rows= loops=)

  • Group Key: dim_station.station_id, dim_task_assignment_state.assignment_state_id, dim_planning_state.planning_state_id
2. 0.000 0.000 ↓ 0.0

Nested Loop (cost=20.74..1,362,463.88 rows=6 width=76) (actual rows= loops=)

  • Join Filter: (t.cost_key = c.cost_key)
3. 0.000 0.000 ↓ 0.0

Seq Scan on fact_personell_cost_rate c (cost=0.00..672.40 rows=41,040 width=13) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Materialize (cost=20.74..1,358,097.90 rows=6 width=88) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Nested Loop (cost=20.74..1,358,097.87 rows=6 width=88) (actual rows= loops=)

  • Join Filter: (t.assignment_state_key = dim_task_assignment_state.assignment_state_key)
6. 0.000 0.000 ↓ 0.0

Nested Loop (cost=20.74..1,358,062.18 rows=379 width=64) (actual rows= loops=)

  • Join Filter: (t.station_key = dim_station.station_key)
7. 0.000 0.000 ↓ 0.0

Seq Scan on dim_station (cost=0.00..27.25 rows=1 width=12) (actual rows= loops=)

  • Filter: (station_id = 'HAJ'::text)
8. 0.000 0.000 ↓ 0.0

Nested Loop (cost=20.74..1,351,505.17 rows=522,381 width=68) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Hash Join (cost=20.18..373.81 rows=283 width=43) (actual rows= loops=)

  • Hash Cond: (bridge_snapshot_state.planning_state_key = dim_planning_state.planning_state_key)
10. 0.000 0.000 ↓ 0.0

Seq Scan on bridge_snapshot_state (cost=0.00..297.68 rows=14,168 width=19) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Hash (cost=20.12..20.12 rows=4 width=40) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Seq Scan on dim_planning_state (cost=0.00..20.12 rows=4 width=40) (actual rows= loops=)

  • Filter: (planning_state_id = 'ACTUAL'::text)
13. 0.000 0.000 ↓ 0.0

Index Scan using idx_fact_task_snapshotstate_key on fact_task t (cost=0.56..4,627.58 rows=14,674 width=47) (actual rows= loops=)

  • Index Cond: (snapshotstate_key = bridge_snapshot_state.snapshotstate_key)
  • Filter: (hdp_section_id = ANY ('{AVI,BER,BEX,BRE,BRX,CGX,DRS,DUS,EGR,FRA,HAJ,HAM,HDQ,LEJ,MUC,SGS,TST,TXL,TXX}'::text[]))
14. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..18.64 rows=3 width=40) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Seq Scan on dim_task_assignment_state (cost=0.00..18.62 rows=3 width=40) (actual rows= loops=)

  • Filter: (assignment_state_id = 'ASSIGNED'::text)