explain.depesz.com

PostgreSQL's explain analyze made readable

Result: skgr

Settings
# exclusive inclusive rows x rows loops node
1. 0.011 479.069 ↓ 64.0 64 1

Limit (cost=30,487.46..30,487.72 rows=1 width=120) (actual time=476.793..479.069 rows=64 loops=1)

2. 2.677 479.058 ↓ 64.0 64 1

Result (cost=30,487.46..30,487.72 rows=1 width=120) (actual time=476.793..479.058 rows=64 loops=1)

3. 0.033 476.381 ↓ 64.0 64 1

Sort (cost=30,487.46..30,487.46 rows=1 width=116) (actual time=476.37..476.381 rows=64 loops=1)

  • Sort Key: flix.popularity DESC, (max(flik_season.updated_epoch)) DESC
  • Sort Method: quicksort Memory: 35kB
4. 0.283 476.348 ↓ 64.0 64 1

Aggregate (cost=30,487.43..30,487.45 rows=1 width=116) (actual time=475.933..476.348 rows=64 loops=1)

5. 1.669 476.065 ↓ 2,662.0 2,662 1

Sort (cost=30,487.43..30,487.43 rows=1 width=89) (actual time=475.928..476.065 rows=2,662 loops=1)

  • Sort Key: flix.flix_id
  • Sort Method: quicksort Memory: 530kB
6. 1.764 474.396 ↓ 2,662.0 2,662 1

Nested Loop (cost=26,748.69..30,487.42 rows=1 width=89) (actual time=63.965..474.396 rows=2,662 loops=1)

7. 5.613 469.970 ↓ 2,662.0 2,662 1

Nested Loop (cost=26,748.42..30,487.1 rows=1 width=97) (actual time=63.96..469.97 rows=2,662 loops=1)

8. 7.278 78.146 ↓ 91.1 7,287 1

Hash Join (cost=26,748..28,635.39 rows=80 width=97) (actual time=62.922..78.146 rows=7,287 loops=1)

9. 7.960 7.960 ↑ 1.0 20,071 1

Seq Scan on season season (cost=0..1,834.71 rows=20,071 width=32) (actual time=0.004..7.96 rows=20,071 loops=1)

10. 1.084 62.908 ↓ 1.2 2,121 1

Hash (cost=26,726.42..26,726.42 rows=1,726 width=81) (actual time=62.908..62.908 rows=2,121 loops=1)

11. 47.121 61.824 ↓ 1.2 2,121 1

Bitmap Heap Scan on flix flix (cost=11,947.9..26,726.42 rows=1,726 width=81) (actual time=14.989..61.824 rows=2,121 loops=1)

  • Filter: ((NOT flix.adult) AND (((flix.tmdb_data ->> 'vote_average'::text))::double precision > '7'::double precision))
  • Heap Blocks: exact=1750
12. 14.703 14.703 ↓ 1.1 5,912 1

Bitmap Index Scan on "flikflix.flix@tmdb_id_idx" (cost=0..11,947.47 rows=5,428 width=0) (actual time=14.703..14.703 rows=5,912 loops=1)

  • Index Cond: (flix.type = 'show'::text)
13. 386.211 386.211 ↓ 0.0 0 7,287

Index Scan using "flikflix.episode@season_id_idx" on episode episode (cost=0.42..23.14 rows=1 width=16) (actual time=0.041..0.053 rows=0 loops=7,287)

  • Index Cond: (episode.season_id = season.season_id)
  • Filter: ((episode.guidebox_data <> '{}'::jsonb) AND ('{iTunes,VUDU,Amazon,STARZ,"Amzn Prime",Criterion,HBO,Hulu,Netflix,Showtime,Disney+,"Apple TV+"}'::text[] && jsonb_arr2text_arr((episode.guidebox_data -> 'providers'::text))))
14. 2.662 2.662 ↓ 0.0 0 2,662

Index Scan using flik_season_pkey on flik_season flik_season (cost=0.27..0.29 rows=1 width=24) (actual time=0.001..0.001 rows=0 loops=2,662)

  • Index Cond: ((flik_season.user_id = 'e129e794-6b78-4fd2-859e-488fe226c862'::uuid) AND (flik_season.season_id = season.season_id))
Planning time : 0.694 ms
Execution time : 479.219 ms