explain.depesz.com

PostgreSQL's explain analyze made readable

Result: fo0e : ㅁㅁ

Settings
# exclusive inclusive rows x rows loops node
1. 2.111 10,761.631 ↓ 30.0 30 1

Subquery Scan on t (cost=4,504.09..4,571.49 rows=1 width=222) (actual time=6,060.238..10,761.631 rows=30 loops=1)

  • Filter: ((t.row_num >= 1) AND (t.row_num <= 30))
  • Rows Removed by Filter: 6669
  • Buffers: shared hit=209327 read=5652
2. 491.817 10,759.520 ↓ 6,699.0 6,699 1

WindowAgg (cost=4,504.09..4,571.48 rows=1 width=222) (actual time=6,060.236..10,759.520 rows=6,699 loops=1)

  • Buffers: shared hit=209327 read=5652
3. 22.578 6,051.421 ↓ 6,699.0 6,699 1

Sort (cost=4,504.09..4,504.09 rows=1 width=79) (actual time=6,049.645..6,051.421 rows=6,699 loops=1)

  • Sort Key: dvs.std_st_dt DESC, dvs.dailyvoca_std_id DESC
  • Sort Method: quicksort Memory: 1135kB
  • Buffers: shared hit=102354 read=3318
4. 8.627 6,028.843 ↓ 6,699.0 6,699 1

Nested Loop Left Join (cost=4,005.64..4,504.08 rows=1 width=79) (actual time=10.111..6,028.843 rows=6,699 loops=1)

  • Buffers: shared hit=102348 read=3318
5. 5.479 5,913.032 ↓ 6,699.0 6,699 1

Nested Loop Left Join (cost=4,005.09..4,503.44 rows=1 width=74) (actual time=10.065..5,913.032 rows=6,699 loops=1)

  • Buffers: shared hit=73244 read=3318
6. 1.412 240.199 ↓ 6,699.0 6,699 1

Nested Loop Anti Join (cost=4,004.53..4,502.65 rows=1 width=69) (actual time=9.271..240.199 rows=6,699 loops=1)

  • Join Filter: (rd.ord_seq = od.ord_seq)
  • Buffers: shared hit=47444
7. 5.085 151.700 ↓ 6,699.0 6,699 1

Nested Loop (cost=4,003.68..4,501.38 rows=1 width=69) (actual time=9.252..151.700 rows=6,699 loops=1)

  • Buffers: shared hit=27308
8. 7.702 19.334 ↓ 1,116.5 6,699 1

Hash Join (cost=4,003.13..4,475.57 rows=6 width=84) (actual time=9.226..19.334 rows=6,699 loops=1)

  • Hash Cond: (((dvs.ord_no)::text = (od.ord_no)::text) AND (dvs.ord_seq = od.ord_seq))
  • Buffers: shared hit=277
9. 2.445 2.722 ↑ 1.0 6,729 1

Bitmap Heap Scan on ldv_std dvs (cost=132.44..569.55 rows=6,729 width=69) (actual time=0.297..2.722 rows=6,729 loops=1)

  • Recheck Cond: ((voca_listen_div_cd)::text = '0002'::text)
  • Heap Blocks: exact=218
  • Buffers: shared hit=239
10. 0.277 0.277 ↑ 1.0 6,729 1

Bitmap Index Scan on ix_lecture_ldv_std_01 (cost=0.00..130.75 rows=6,729 width=0) (actual time=0.277..0.277 rows=6,729 loops=1)

  • Index Cond: ((voca_listen_div_cd)::text = '0002'::text)
  • Buffers: shared hit=21
11. 1.324 8.910 ↓ 5.6 6,717 1

Hash (cost=3,852.69..3,852.69 rows=1,200 width=19) (actual time=8.910..8.910 rows=6,717 loops=1)

  • Buckets: 8192 (originally 2048) Batches: 1 (originally 1) Memory Usage: 399kB
  • Buffers: shared hit=38
12. 7.586 7.586 ↓ 5.6 6,717 1

Index Scan using ix_payment_pay_ord_dtl_12_jacob on pay_ord_dtl od (cost=0.43..3,852.69 rows=1,200 width=19) (actual time=0.043..7.586 rows=6,717 loops=1)

  • Index Cond: (((goods_dtl_div_cd)::text = '0022'::text) AND ((goods_div_cd)::text = '0010'::text))
  • Filter: ((ord_cancl_yn)::text = 'N'::text)
  • Rows Removed by Filter: 81
  • Buffers: shared hit=38
13. 127.281 127.281 ↑ 1.0 1 6,699

Index Only Scan using ix_payment_pay_ord_09 on pay_ord o (cost=0.56..4.30 rows=1 width=23) (actual time=0.019..0.019 rows=1 loops=6,699)

  • Index Cond: ((ord_cancl_yn = 'N'::text) AND (ord_no = (dvs.ord_no)::text) AND (mem_no = (dvs.mem_no)::text) AND (ord_stat_cd = '0002'::text))
  • Heap Fetches: 0
  • Buffers: shared hit=27031
14. 6.699 87.087 ↓ 0.0 0 6,699

Nested Loop (cost=0.84..1.26 rows=1 width=19) (actual time=0.013..0.013 rows=0 loops=6,699)

  • Buffers: shared hit=20136
15. 80.388 80.388 ↓ 0.0 0 6,699

Index Scan using ix_payment_pay_refund_03 on pay_refund r (cost=0.42..0.48 rows=1 width=23) (actual time=0.012..0.012 rows=0 loops=6,699)

  • Index Cond: ((ord_no)::text = (o.ord_no)::text)
  • Filter: ((refund_div_cd)::text = '0002'::text)
  • Buffers: shared hit=20136
16. 0.000 0.000 ↓ 0.0 0

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

  • Index Cond: ((refund_no)::text = (r.refund_no)::text)
17. 5,667.354 5,667.354 ↓ 0.0 0 6,699

Index Scan using pk_payment_pay_pay on pay_pay p (cost=0.56..0.77 rows=2 width=20) (actual time=0.845..0.846 rows=0 loops=6,699)

  • Index Cond: ((ord_no)::text = (o.ord_no)::text)
  • Filter: ((pay_means_cd)::text = ANY ('{0001,0002,0003,0012,0014,0016,0017,0009}'::text[]))
  • Rows Removed by Filter: 0
  • Buffers: shared hit=25800 read=3318
18. 107.184 107.184 ↓ 0.0 0 6,699

Index Scan using pk_payment_pay_pay on pay_pay ps (cost=0.56..0.72 rows=2 width=20) (actual time=0.016..0.016 rows=0 loops=6,699)

  • Index Cond: (((o.ord_no)::text = (ord_no)::text) AND (pay_seq = 1))
  • Buffers: shared hit=29104
19.          

SubPlan (for WindowAgg)

20. 20.097 107.184 ↑ 1.0 1 6,699

Aggregate (cost=24.40..24.41 rows=1 width=32) (actual time=0.016..0.016 rows=1 loops=6,699)

  • Buffers: shared hit=23913 read=24
21. 87.087 87.087 ↑ 2.5 4 6,699

Index Scan using pk_lecture_ldv_scr on ldv_scr dvp (cost=0.42..24.34 rows=10 width=7) (actual time=0.011..0.013 rows=4 loops=6,699)

  • Index Cond: (dailyvoca_std_id = dvs.dailyvoca_std_id)
  • Buffers: shared hit=23913 read=24
22. 20.097 46.893 ↑ 1.0 1 6,699

Aggregate (cost=24.38..24.39 rows=1 width=8) (actual time=0.007..0.007 rows=1 loops=6,699)

  • Buffers: shared hit=23944
23. 26.796 26.796 ↑ 4.0 1 6,699

Index Scan using pk_lecture_ldv_scr on ldv_scr dvp_1 (cost=0.42..24.37 rows=4 width=8) (actual time=0.003..0.004 rows=1 loops=6,699)

  • Index Cond: (dailyvoca_std_id = dvs.dailyvoca_std_id)
  • Filter: ((acum_yn)::text = 'N'::text)
  • Rows Removed by Filter: 2
  • Buffers: shared hit=23937
24. 2.770 4,062.205 ↑ 1.0 1 1,385

Limit (cost=1.99..18.16 rows=1 width=32) (actual time=2.932..2.933 rows=1 loops=1,385)

  • Buffers: shared hit=22961 read=2310
25. 4.155 4,059.435 ↑ 1.0 1 1,385

Nested Loop (cost=1.99..18.16 rows=1 width=32) (actual time=2.931..2.931 rows=1 loops=1,385)

  • Buffers: shared hit=22961 read=2310
26. 4.155 4,040.045 ↑ 1.0 1 1,385

Nested Loop (cost=1.55..17.65 rows=1 width=7) (actual time=2.917..2.917 rows=1 loops=1,385)

  • Buffers: shared hit=17419 read=2310
27. 5.540 3,175.805 ↑ 1.0 1 1,385

Nested Loop (cost=0.99..17.03 rows=1 width=20) (actual time=2.293..2.293 rows=1 loops=1,385)

  • Buffers: shared hit=10717 read=1773
28. 1,880.830 1,880.830 ↑ 1.0 1 1,385

Index Scan using ix_payment_pay_discpn_use_01 on pay_discpn_use s_lcu (cost=0.43..8.45 rows=1 width=4) (actual time=1.358..1.358 rows=1 loops=1,385)

  • Index Cond: (((ord_no)::text = (o.ord_no)::text) AND (ord_seq = od.ord_seq))
  • Buffers: shared hit=4536 read=1023
29. 1,289.435 1,289.435 ↑ 1.0 1 1,385

Index Scan using pk_payment_pay_discpn_reg_mem on pay_discpn_reg_mem s_lcl (cost=0.56..8.58 rows=1 width=24) (actual time=0.931..0.931 rows=1 loops=1,385)

  • Index Cond: (cpn_reg_no = s_lcu.cpn_reg_no)
  • Buffers: shared hit=6181 read=750
30. 860.085 860.085 ↑ 1.0 1 1,385

Index Scan using pk_payment_pay_discpn_certkey on pay_discpn_certkey s_lca (cost=0.56..0.62 rows=1 width=27) (actual time=0.621..0.621 rows=1 loops=1,385)

  • Index Cond: ((certkey)::text = (s_lcl.certkey)::text)
  • Buffers: shared hit=6702 read=537
31. 15.235 15.235 ↑ 1.0 1 1,385

Index Scan using pk_payment_pay_discpn on pay_discpn s_lc (cost=0.43..0.51 rows=1 width=51) (actual time=0.011..0.011 rows=1 loops=1,385)

  • Index Cond: ((cpn_id)::text = (s_lca.cpn_id)::text)
  • Buffers: shared hit=5542