티스토리 뷰
SQL> CREATE INDEX I_EMP_DEPTNO ON BIG_EMP(DEPTNO);
인덱스가 생성되었습니다.
SQL> CREATE INDEX I_EMP_JOB ON BIG_EMP(JOB);
인덱스가 생성되었습니다.
SQL> SELECT * FROM BIG_EMP
  2  WHERE DEPTNO =10 AND JOB='CLERK';
싱글 인덱스
SELECT * FROM BIG_EMP
WHERE DEPTNO =10 AND JOB='CLERK'
call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.00       0.02          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch       78      0.03       0.20         36      10934          0        1154
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total       80      0.03       0.22         36      10934          0        1154
Misses in library cache during parse: 1
Optimizer mode: RULE
Parsing user id: 61  (SCOTT)
Rows     Row Source Operation
-------  ---------------------------------------------------
   1154  TABLE ACCESS BY INDEX ROWID BIG_EMP (cr=10934 pr=36 pw=0 time=3268162 us)
   1154   AND-EQUAL  (cr=10728 pr=36 pw=0 time=4305820 us)
   4367    INDEX RANGE SCAN I_EMP_DEPTNO (cr=6501 pr=12 pw=0 time=59344 us)(object id 52636)
   3223    INDEX RANGE SCAN I_EMP_JOB (cr=4227 pr=24 pw=0 time=10544806 us)(object id 52637)
결합인덱스
  
SQL> ALTER SESSION SET OPTIMIZER_MODE=RULE;
세션이 변경되었습니다.
SQL> ALTER SESSION SET SQL_TRACE=TRUE;
세션이 변경되었습니다.
SQL> CREATE INDEX I_EMP_DEPTNO_JOB ON BIG_EMP(DEPTNO,JOB);
인덱스가 생성되었습니다.
SQL> SELECT * FROM BIG_EMP
  2  WHERE DEPTNO =10 AND JOB='CLERK';
SELECT * FROM BIG_EMP
WHERE DEPTNO =10 AND JOB='CLERK'
call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch       78      0.01       0.03          5        288          0        1154
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total       80      0.01       0.04          5        288          0        1154
Misses in library cache during parse: 1
Optimizer mode: RULE
Parsing user id: 61  (SCOTT)
Rows     Row Source Operation
-------  ---------------------------------------------------
   1154  TABLE ACCESS BY INDEX ROWID BIG_EMP (cr=288 pr=5 pw=0 time=35076 us)
   1154   INDEX RANGE SCAN I_EMP_DEPTNO_JOB (cr=82 pr=5 pw=0 time=25813 us)(object id 52639)
모든 경우에서 결합인덱스의 속도가 좋은건 아니니 무조건 적으로 사용은 안됨
'DataBase > Oracle' 카테고리의 다른 글
| Export (0) | 2010.06.07 | 
|---|---|
| PL/SQL 기초 사용 예 (0) | 2010.05.28 | 
| Temp tablespace 사용법 (0) | 2010.05.18 | 
| Tablespace 사용량 체크 (0) | 2010.05.18 | 
| DataBase 메모리 보기 (0) | 2010.05.18 | 
- Total
 
- Today
 
- Yesterday
 
- index
 - postgresql jsonb index
 - SQLPlus
 - 투싼
 - parameter
 - 리눅스
 - 아이폰
 - 갤럭시S
 - MS-SQL
 - 출시일
 - query 잘림
 - oracle
 - Backup
 - 윈도우
 - 한글
 - postgresql jsonb
 - 인덱스
 - iOS5
 - PostgreSQL
 - 독도
 - recovery
 - iPhone
 - 오라클
 - tablespace
 - 아이폰4
 - Managing Schema Objects
 - postgresql pg_stat_activity
 - linux
 - PL/SQL
 - Flashback