테마
유통 본사 MD의 「메뉴 비교」 화면은 메뉴를 2 ~ 6개 골라 2년 치 판매 줄 수와 수량, 금액을 나란히 보여 준다. 화면은 고른 상품번호를 쉼표로 이어 문자열 하나('1010,1047,1052')로 넘긴다.
메뉴 하나를 고르는 실적 화면은 같은 인덱스로 0.01초에 끝나는데, 이 화면은 메뉴를 몇 개 고르든 0.2초가 걸린다. MD 여섯 명이 하루 수백 번 쓴다.
CF11 판매상품: 1,096,708행 · 8,204블록 · SLE_NO · ITM_NO NUMBER(5)(팔린 메뉴 88종) · SLE_QTY · SLE_UPRCCF11_PK (SLE_NO, ITM_NO) · IX_CF11_ITM (ITM_NO, SLE_QTY, SLE_UPRC): BLEVEL 2 · 리프 약 3,230블록 · 통계 최신SELECT ITM_NO, COUNT(*) AS sle_cnt, SUM(SLE_QTY) AS qty, SUM(SLE_QTY * SLE_UPRC) AS amt
FROM CF11
WHERE INSTR(',' || :v_items || ',', ',' || ITM_NO || ',') > 0
GROUP BY ITM_NO
ORDER BY ITM_NO
-------------------------------------------------------------------------------------------------
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers |
-------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | | 3 | 00:00:00.21 | 3244 |
| 1 | SORT GROUP BY | | 1 | 88 | 3 | 00:00:00.21 | 3244 |
|* 2 | INDEX FAST FULL SCAN | IX_CF11_ITM | 1 | 54835 | 30209 | 00:00:00.19 | 3244 |
-------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
2 - filter(INSTR(','||:V_ITEMS||',',','||TO_CHAR("ITM_NO")||',')>0)
INDEX RANGE SCAN이 아니라 INDEX FAST FULL SCAN인 이유를 Predicate Information으로 설명하시오.