explain.depesz.com

PostgreSQL's explain analyze made readable

Result: La7N

Settings
# exclusive inclusive rows x rows loops node
1. 0.204 299.362 ↓ 1.3 139 1

Nested Loop (cost=15,758.45..16,117.86 rows=104 width=1,269) (actual time=295.968..299.362 rows=139 loops=1)

  • Buffers: shared hit=702 read=8,800
  • I/O Timings: read=243.414
2. 0.352 295.961 ↓ 1.3 139 1

HashAggregate (cost=15,758.02..15,759.06 rows=104 width=4) (actual time=295.889..295.961 rows=139 loops=1)

  • Group Key: personal_access_tokens.user_id
  • Buffers: shared hit=146 read=8,800
  • I/O Timings: read=243.414
3. 295.609 295.609 ↓ 1.4 148 1

Index Scan using index_after_expiry_notification_personal_access_tokens on public.personal_access_tokens (cost=0.43..15,757.76 rows=104 width=4) (actual time=2.356..295.609 rows=148 loops=1)

  • Index Cond: (personal_access_tokens.expires_at = CURRENT_DATE)
  • Buffers: shared hit=146 read=8,800
  • I/O Timings: read=243.414
4. 3.197 3.197 ↑ 1.0 1 139

Index Scan using users_pkey on public.users (cost=0.43..3.45 rows=1 width=1,269) (actual time=0.023..0.023 rows=1 loops=139)

  • Index Cond: (users.id = personal_access_tokens.user_id)
  • Buffers: shared hit=556