explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 8ITs

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

Sort (cost=265.64..265.89 rows=100 width=890) (actual rows= loops=)

  • Sort Key: t.name
2. 0.000 0.000 ↓ 0.0

Hash Semi Join (cost=58.86..262.32 rows=100 width=890) (actual rows= loops=)

  • Hash Cond: (p.team_id = "ANY_subquery".team_ids)
3. 0.000 0.000 ↓ 0.0

Hash Join (cost=15.38..217.47 rows=100 width=894) (actual rows= loops=)

  • Hash Cond: (p.team_id = t.id)
4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.93..214.70 rows=100 width=883) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Hash Semi Join (cost=12.66..27.21 rows=100 width=12) (actual rows= loops=)

  • Hash Cond: (c.id = (((jsonb_object_keys(users.cards)))::integer))
6. 0.000 0.000 ↓ 0.0

Seq Scan on cards c (cost=0.00..11.89 rows=589 width=12) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Hash (cost=11.41..11.41 rows=100 width=4) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Result (cost=0.14..10.41 rows=100 width=4) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

ProjectSet (cost=0.14..8.66 rows=100 width=32) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Index Scan using users_pkey on users (cost=0.14..8.15 rows=1 width=194) (actual rows= loops=)

  • Index Cond: (id = 2)
11. 0.000 0.000 ↓ 0.0

Index Scan using opta_players_pkey on opta_players p (cost=0.28..1.87 rows=1 width=883) (actual rows= loops=)

  • Index Cond: (id = c.player_id)
12. 0.000 0.000 ↓ 0.0

Hash (cost=2.20..2.20 rows=20 width=11) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Seq Scan on opta_teams t (cost=0.00..2.20 rows=20 width=11) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Hash (cost=42.22..42.22 rows=100 width=8) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Subquery Scan on ANY_subquery (cost=0.00..42.22 rows=100 width=8) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

ProjectSet (cost=0.00..41.22 rows=100 width=12) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=0.00..40.71 rows=1 width=68) (actual rows= loops=)

  • Group Key: e.id
18. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.00..40.62 rows=10 width=20) (actual rows= loops=)

  • Join Filter: (f.id = ANY (e.fixtures))
19. 0.000 0.000 ↓ 0.0

Seq Scan on events e (cost=0.00..2.27 rows=1 width=43) (actual rows= loops=)

  • Filter: (id = 25)
20. 0.000 0.000 ↓ 0.0

Seq Scan on opta_fixtures f (cost=0.00..29.80 rows=380 width=20) (actual rows= loops=)