explain.depesz.com

PostgreSQL's explain analyze made readable

Result: KUQA

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

GroupAggregate (cost=55,743,475.49..55,753,465.88 rows=200 width=16) (actual rows= loops=)

  • Group Key: (generate_series(date_trunc('day'::text, date_trunc('day'::text, (now() - '29 days'::interval))), now(), ('1 day'::cstring)::interval))
2. 0.000 0.000 ↓ 0.0

Sort (cost=55,743,475.49..55,746,804.96 rows=1,331,785 width=45) (actual rows= loops=)

  • Sort Key: (generate_series(date_trunc('day'::text, date_trunc('day'::text, (now() - '29 days'::interval))), now(), ('1 day'::cstring)::interval))
3. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=14,532.88..55,526,058.13 rows=1,331,785 width=45) (actual rows= loops=)

  • Join Filter: (tsrange(timezone('America/Los_Angeles'::text, (generate_series(date_trunc('day'::text, date_trunc('day'::text, (now() - '29 days'::interval))), now(), ('1 day'::cstring)::interval))), (timezone('America/Los_Angeles'::text, (generate_series(date_trunc('day'::text, date_trunc('day'::text, (now() - '29 days'::interval))), now(), ('1 day'::cstring)::interval))) + ('1 day'::cstring)::interval)) @> timezone('America/Los_Angeles'::text, pages."timestamp"))
4. 0.000 0.000 ↓ 0.0

Result (cost=0.00..5.03 rows=1,000 width=8) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Materialize (cost=14,532.88..552,066.07 rows=1,331,785 width=45) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on pages (cost=14,532.88..533,701.14 rows=1,331,785 width=45) (actual rows= loops=)

  • Recheck Cond: ((path ~~* '/book/%'::text) OR (path ~~* '/booking/%'::text) OR (path ~~* '/wedding/%'::text) OR (path ~~* '/picturepeople/%'::text))
7. 0.000 0.000 ↓ 0.0

BitmapOr (cost=14,532.88..14,532.88 rows=1,366,013 width=0) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on trgm_idx_javascript_pages_path (cost=0.00..11,210.95 rows=1,231,326 width=0) (actual rows= loops=)

  • Index Cond: (path ~~* '/book/%'::text)
9. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on trgm_idx_javascript_pages_path (cost=0.00..995.90 rows=87,987 width=0) (actual rows= loops=)

  • Index Cond: (path ~~* '/booking/%'::text)
10. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on trgm_idx_javascript_pages_path (cost=0.00..265.55 rows=206 width=0) (actual rows= loops=)

  • Index Cond: (path ~~* '/wedding/%'::text)
11. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on trgm_idx_javascript_pages_path (cost=0.00..728.70 rows=46,494 width=0) (actual rows= loops=)

  • Index Cond: (path ~~* '/picturepeople/%'::text)