explain.depesz.com

PostgreSQL's explain analyze made readable

Result: WNE8 : ㅁㅁ

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 591.451 ↑ 1.0 1 1

Finalize Aggregate (cost=207,182.59..207,182.60 rows=1 width=8) (actual time=591.450..591.451 rows=1 loops=1)

  • Buffers: shared hit=190,020
2. 22.846 594.198 ↓ 1.2 6 1

Gather (cost=207,182.07..207,182.58 rows=5 width=8) (actual time=587.394..594.198 rows=6 loops=1)

  • Workers Planned: 5
  • Workers Launched: 5
  • Buffers: shared hit=190,020
3. 2.204 571.352 ↑ 1.0 1 6 / 6

Partial Aggregate (cost=206,182.07..206,182.08 rows=1 width=8) (actual time=571.352..571.352 rows=1 loops=6)

  • Buffers: shared hit=190,020
4. 0.530 569.148 ↓ 16.3 1,122 6 / 6

Nested Loop Anti Join (cost=12,724.20..206,181.89 rows=69 width=0) (actual time=99.669..569.148 rows=1,122 loops=6)

  • Join Filter: (rd.ord_seq = od.ord_seq)
  • Buffers: shared hit=190,020
5. 1.478 543.945 ↓ 16.0 1,122 6 / 6

Nested Loop (cost=12,723.35..206,104.08 rows=70 width=19) (actual time=99.645..543.945 rows=1,122 loops=6)

  • Buffers: shared hit=169,817
6. 502.610 515.551 ↓ 14.6 1,122 6 / 6

Parallel Bitmap Heap Scan on pay_ord_dtl od (cost=12,722.92..205,762.24 rows=77 width=19) (actual time=99.612..515.551 rows=1,122 loops=6)

  • Recheck Cond: ((goods_div_cd)::text = '0010'::text)
  • Filter: (((ord_cancl_yn)::text = 'N'::text) AND ((goods_dtl_div_cd)::text = '0022'::text))
  • Rows Removed by Filter: 106,561
  • Heap Blocks: exact=17,349
  • Buffers: shared hit=142,840
7. 12.941 12.941 ↑ 1.0 646,096 1 / 6

Bitmap Index Scan on ix_payment_pay_ord_dtl_07 (cost=0.00..12,722.82 rows=655,235 width=0) (actual time=77.647..77.647 rows=646,096 loops=1)

  • Index Cond: ((goods_div_cd)::text = '0010'::text)
  • Buffers: shared hit=3,877
8. 26.916 26.916 ↑ 1.0 1 6,729 / 6

Index Scan using pk_payment_pay_ord on pay_ord o (cost=0.43..4.44 rows=1 width=15) (actual time=0.024..0.024 rows=1 loops=6,729)

  • Index Cond: ((ord_no)::text = (od.ord_no)::text)
  • Filter: (((ord_stat_cd)::text = '0002'::text) AND ((ord_cancl_yn)::text = 'N'::text))
  • Buffers: shared hit=26,977
9. 2.243 24.673 ↓ 0.0 0 6,729 / 6

Nested Loop (cost=0.84..1.10 rows=1 width=19) (actual time=0.022..0.022 rows=0 loops=6,729)

  • Buffers: shared hit=20,203
10. 22.430 22.430 ↓ 0.0 0 6,729 / 6

Index Scan using ix_payment_pay_refund_03 on pay_refund r (cost=0.42..0.47 rows=1 width=23) (actual time=0.020..0.020 rows=0 loops=6,729)

  • Index Cond: ((ord_no)::text = (o.ord_no)::text)
  • Filter: ((refund_div_cd)::text = '0002'::text)
  • Buffers: shared hit=20,203
11. 0.000 0.000 ↓ 0.0 0 / 6

Index Scan using pk_payment_pay_refund_dtl on pay_refund_dtl rd (cost=0.42..0.61 rows=2 width=12) (never executed)

  • Index Cond: ((refund_no)::text = (r.refund_no)::text)