explain.depesz.com

PostgreSQL's explain analyze made readable

Result: DVvU

Settings
# exclusive inclusive rows x rows loops node
1. 12,817.745 41,832.795 ↓ 0.0 0 1

Update on public._accrgat23840 (cost=4,345.28..26,117,509.44 rows=2 width=412) (actual time=41,832.795..41,832.795 rows=0 loops=1)

  • Buffers: shared hit=934945 read=1226 dirtied=57328, local read=1492
  • Rows Removed by Filter: 25488
2. 16,001.055 29,015.050 ↓ 15,888.0 31,776 1

Hash Join (cost=4,345.28..26,117,509.44 rows=2 width=412) (actual time=88.052..29,015.050 rows=31,776 loops=1)

  • Output: _accrgat23840._accountrref, _accrgat23840._period, _accrgat23840._fld3822rref, _accrgat23840._fld3844, _accrgat23840._fld5750rref, _accrgat23840._fld5751rref, _accrgat23840._fld6299rref, _accrgat23840._value1_type, _accrgat23840._value1_rtref, _accrgat23840._value1_rrref, _accrgat23840._value2_type, _accrgat23840._value2_rtref, _accrgat23840._value2_rrref, (_accrgat23840._fld3823 + t2._fld3823), (_accrgat23840._turnoverdt3830 + t2._turnoverdt3830), (_accrgat23840._turnoverct3831 + t2._turnoverct3831), (_accrgat23840._turnover3832 + t2._turnover3832), (_accrgat23840._fld3824 + t2._fld3824), (_accrgat23840._turnoverdt3833 + t2._turnoverdt3833), (_accrgat23840._turnoverct3834 + t2._turnoverct3834), (_accrgat23840._turnover3835 + t2._turnover3835), (_accrgat23840._fld3825 + t2._fld3825), (_accrgat23840._turnoverdt3836 + t2._turnoverdt3836), (_accrgat23840._turnoverct3837 + t2._turnoverct3837), (_accrgat23840._turnover3838 + t2._turnover3838), _accrgat23840.ctid, t2.ctid
  • Hash Cond: ((_accrgat23840._fld3822rref == t2._fld3822rref) AND (_accrgat23840._value1_type == t2._value1_type) AND (_accrgat23840._value1_rtref == t2._value1_rtref) AND (_accrgat23840._value1_rrref == t2._value1_rrref) AND (_accrgat23840._value2_type == t2._value2_type) AND (_accrgat23840._value2_rtref == t2._value2_rtref) AND (_accrgat23840._value2_rrref == t2._value2_rrref) AND (_accrgat23840._period = t2._period) AND (_accrgat23840._accountrref = t2._accountrref) AND (_accrgat23840._fld3844 = t2._fld3844) AND (_accrgat23840._fld5750rref = t2._fld5750rref) AND (_accrgat23840._fld5751rref = t2._fld5751rref) AND (_accrgat23840._fld6299rref = t2._fld6299rref))
  • Buffers: shared hit=719194 dirtied=30067, local read=1492
3. 12,927.237 12,927.237 ↑ 1.0 14,181,870 1

Seq Scan on public._accrgat23840 (cost=0.00..1,580,810.95 rows=14,242,295 width=192) (actual time=0.860..12,927.237 rows=14,181,870 loops=1)

  • Output: _accrgat23840._accountrref, _accrgat23840._period, _accrgat23840._fld3822rref, _accrgat23840._fld3844, _accrgat23840._fld5750rref, _accrgat23840._fld5751rref, _accrgat23840._fld6299rref, _accrgat23840._value1_type, _accrgat23840._value1_rtref, _accrgat23840._value1_rrref, _accrgat23840._value2_type, _accrgat23840._value2_rtref, _accrgat23840._value2_rrref, _accrgat23840._fld3823, _accrgat23840._turnoverdt3830, _accrgat23840._turnoverct3831, _accrgat23840._turnover3832, _accrgat23840._fld3824, _accrgat23840._turnoverdt3833, _accrgat23840._turnoverct3834, _accrgat23840._turnover3835, _accrgat23840._fld3825, _accrgat23840._turnoverdt3836, _accrgat23840._turnoverct3837, _accrgat23840._turnover3838, _accrgat23840.ctid
  • Buffers: shared hit=719194 dirtied=30067
4. 43.042 86.758 ↑ 1.0 31,776 1

Hash (cost=3,613.90..3,613.90 rows=31,799 width=192) (actual time=86.757..86.758 rows=31,776 loops=1)

  • Output: t2._fld3823, t2._turnoverdt3830, t2._turnoverct3831, t2._turnover3832, t2._fld3824, t2._turnoverdt3833, t2._turnoverct3834, t2._turnover3835, t2._fld3825, t2._turnoverdt3836, t2._turnoverct3837, t2._turnover3838, t2.ctid, t2._period, t2._accountrref, t2._fld3822rref, t2._fld3844, t2._fld5750rref, t2._fld5751rref, t2._fld6299rref, t2._value1_type, t2._value1_rtref, t2._value1_rrref, t2._value2_type, t2._value2_rtref, t2._value2_rrref
  • Buckets: 32768 Batches: 1 Memory Usage: 6915kB
  • Buffers: local read=1492
5. 43.716 43.716 ↑ 1.0 31,776 1

Seq Scan on pg_temp_3.tt9 t2 (cost=0.00..3,613.90 rows=31,799 width=192) (actual time=0.590..43.716 rows=31,776 loops=1)

  • Output: t2._fld3823, t2._turnoverdt3830, t2._turnoverct3831, t2._turnover3832, t2._fld3824, t2._turnoverdt3833, t2._turnoverct3834, t2._turnover3835, t2._fld3825, t2._turnoverdt3836, t2._turnoverct3837, t2._turnover3838, t2.ctid, t2._period, t2._accountrref, t2._fld3822rref, t2._fld3844, t2._fld5750rref, t2._fld5751rref, t2._fld6299rref, t2._value1_type, t2._value1_rtref, t2._value1_rrref, t2._value2_type, t2._value2_rtref, t2._value2_rrref
  • Filter: (t2._edcount = '2'::numeric)
  • Buffers: local read=1492