explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 4w3Pk

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

Sort (cost=846,193.74..847,192.76 rows=399,610 width=120) (actual rows= loops=)

  • Sort Key: u.aeic, k.kpi_id, c.calc_rslt_strt_ts
2. 0.000 0.000 ↓ 0.0

Hash Join (cost=594.87..809,013.56 rows=399,610 width=120) (actual rows= loops=)

  • Hash Cond: (c.unit_key = u.unit_id)
3. 0.000 0.000 ↓ 0.0

Hash Join (cost=556.29..794,831.24 rows=62,931 width=88) (actual rows= loops=)

  • Hash Cond: (c.calc_rslt_var_key = v.calc_rslt_var_key)
4. 0.000 0.000 ↓ 0.0

Append (cost=0.00..791,585.81 rows=549,295 width=22) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Seq Scan on calc_rslt_8 c (cost=0.00..0.00 rows=1 width=22) (actual rows= loops=)

  • Filter: ((calc_rslt_strt_ts >= '2018-01-01 00:00:00'::timestamp without time zone) AND (calc_rslt_strt_ts < '2018-02-01 00:00:00'::timestamp without time zone) AND (rw_exp_ts = '9999-12-31 23:59:59.999999'::timestamp without time zone) AND (date_trunc('day'::text, calc_rslt_strt_ts) >= '2018-01-01'::date) AND (date_trunc('day'::text, calc_rslt_strt_ts) < '2018-02-01'::date))
6. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on calc_rslt_8_201801 c_1 (cost=8,876.56..791,585.81 rows=549,294 width=22) (actual rows= loops=)

  • Recheck Cond: ((date_trunc('day'::text, calc_rslt_strt_ts) >= '2018-01-01'::date) AND (date_trunc('day'::text, calc_rslt_strt_ts) < '2018-02-01'::date))
  • Filter: ((calc_rslt_strt_ts >= '2018-01-01 00:00:00'::timestamp without time zone) AND (calc_rslt_strt_ts < '2018-02-01 00:00:00'::timestamp without time zone) AND (rw_exp_ts = '9999-12-31 23:59:59.999999'::timestamp without time zone))
7. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on calc_rslt_8_201801_days_ix (cost=0.00..8,739.24 rows=551,867 width=0) (actual rows= loops=)

  • Index Cond: ((date_trunc('day'::text, calc_rslt_strt_ts) >= '2018-01-01'::date) AND (date_trunc('day'::text, calc_rslt_strt_ts) < '2018-02-01'::date))
8. 0.000 0.000 ↓ 0.0

Hash (cost=537.29..537.29 rows=1,520 width=70) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Hash Join (cost=484.53..537.29 rows=1,520 width=70) (actual rows= loops=)

  • Hash Cond: ((k.kpi_name)::text = (v.calc_rslt_var_nm)::text)
10. 0.000 0.000 ↓ 0.0

Seq Scan on dim_kpi_1543595794275 k (cost=0.00..16.30 rows=630 width=68) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Hash (cost=318.68..318.68 rows=13,268 width=18) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

Seq Scan on calc_rslt_var v (cost=0.00..318.68 rows=13,268 width=18) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Hash (cost=22.70..22.70 rows=1,270 width=36) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Seq Scan on dim_unit_1543595794275 u (cost=0.00..22.70 rows=1,270 width=36) (actual rows= loops=)