explain.depesz.com

PostgreSQL's explain analyze made readable

Result: gUMt

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

CTE Scan on grouped_notices (cost=760.55..9,531.00 rows=10 width=192) (actual rows= loops=)

2.          

CTE grouped_notices

3. 0.000 0.000 ↓ 0.0

Limit (cost=760.33..760.55 rows=10 width=160) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

HashAggregate (cost=760.33..835.32 rows=3,333 width=160) (actual rows= loops=)

  • Group Key: (scheduled_notice.jsonb #>> '{userId}'::text[]), (scheduled_notice.jsonb #>> '{noticeConfig,templateId}'::text[]), (scheduled_notice.jsonb #>> '{triggeringEvent}'::text[]), (scheduled_notice.jsonb #>> '{noticeConfig,timing}'::text[]), (scheduled_notice.jsonb #>> '{noticeConfig,format}'::text[])
5. 0.000 0.000 ↓ 0.0

Seq Scan on scheduled_notice (cost=0.00..718.66 rows=3,333 width=160) (actual rows= loops=)

  • Filter: ((jsonb ->> 'nextRunTime'::text) < '2019-08-01T15:16:46.675Z'::text)
6.          

SubPlan (forCTE Scan)

7. 0.000 0.000 ↓ 0.0

Aggregate (cost=877.02..877.03 rows=1 width=32) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Limit (cost=0.00..877.00 rows=1 width=376) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Seq Scan on scheduled_notice scheduled_notice_1 (cost=0.00..877.00 rows=1 width=376) (actual rows= loops=)