explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 6wd5

Settings
# exclusive inclusive rows x rows loops node
1. 12,100.009 178,746.787 ↓ 2,042.8 408,566 1

HashAggregate (cost=1,836.29..1,949.29 rows=200 width=86) (actual time=173,325.149..178,746.787 rows=408,566 loops=1)

  • Output: c."SP_ID", btrim(to_char((trunc_timestamp2(timezone((sys_config_value('LOCAL_TIME_ZONE'::character varying))::text, (c."RECORDED_TIME")::timestamp with time zone), (sys_config_value('HISTORY_TRAFFIC_GRANULARITY'::character varying))::integer)), ' (...)
  • Buffers: shared hit=21271475 read=51329, temp read=19933 written=19932
2. 166,646.778 166,646.778 ↓ 4,082.0 4,081,977 1

Function Scan on public.get_load_negated_interval_records_between c (cost=1.29..1,808.79 rows=1,000 width=68) (actual time=9,048.787..166,646.778 rows=4,081,977 loops=1)

  • Output: c."SP_ID", trunc_timestamp2(timezone((sys_config_value('LOCAL_TIME_ZONE'::character varying))::text, (c."RECORDED_TIME")::timestamp with time zone), (sys_config_value('HISTORY_TRAFFIC_GRANULARITY'::character varying))::integer), (trunc_time (...)
  • Function Call: get_load_negated_interval_records_between((timezone((sys_config_value('LOCAL_TIME_ZONE'::character varying))::text, (date_trunc('week'::text, timezone((sys_config_value('LOCAL_TIME_ZONE'::character varying))::text, ((now())::timestam (...)
  • Buffers: shared hit=20454343 read=51329, temp read=19933 written=19932