출처 : http://blog.naver.com/flydrago/40001931099 Tuning SQL Statements ■■■■ ■■■■■■■■ ■■■■■■■■■■■■ ☜DB Lab. ▲ORAWIS ▲Tuning ◀Prev. Chap. ▶Next. Chap. How to Write New SQL Statements How to Use Hints How to Tune Existing SQL Statements ☞How to Use Hints ● 응용설계자는 특정 데이터에 대하여 optimizer가 알 수 없는 정보를 가질 수 있음. ● 응용설계자는 optimizer보다 더 좋은 execution plan을 선택할 수 있음. ● 응용설계자는 hint를 사용하여 강제적으로 사용자가 선택한 executio..
WEB TIP/Oracle
출처 : DBguide(hikim)님 EMP table을 이용하여, 직원들의 부서별 급여 순위를 보는 SQL 만들기.... 결과. EMPNO ENAME SAL DEPTNO RANK_DEPT ---------- ---------- ---------- ---------- ---------- 7839 KING 5000 10 1 --> 10번 부서의 1등 7782 CLARK 2450 10 2 7934 MILLER 1300 10 3 7788 SCOTT 3000 20 1 --> 20번 부서의 1등 7902 FORD 3000 20 2 7566 JONES 2975 20 3 7876 ADAMS 1100 20 4 7369 SMITH 800 20 5 7698 BLAKE 2850 30 1 7499 ALLEN 1600 30 2..
출처 : DBguide(jhouse)님 + ALL_ROWS - /*+ ALL_ROWS */ - 예 SELECT /*+ ALL_ROWS */ empno, ename, sal, job FROM emp WHERE empno = 7566; + FIRST_ROWS - /*+ FIRST_ROWS */ + CHOOSE - /*+ CHOOSE */ + RULE - /*+ RULE */ ** HINTs for Access Methods + FULL - /*+ FULL(table) */ - 예 SELECT /*+ FULL(a) Don't use the index on ACCNO */ accno, bal FROM accounts a WHERE accno = 7086854; + ROWID - /*+ ROWID(table) *..
맨날 까묵네;;; -- 테이블 스페이스 조회 SELECT TABLESPACE_NAME, STATUS, CONTENTS FROM DBA_TABLESPACES; -- 테이블 스페이스 생성 CREATE TABLESPACE TS_ZEPHOME DATAFILE 'D:\ORACLEDATA\TS_ZEPHOME.dbs' SIZE 20M DEFAULT STORAGE (INITIAL 128K NEXT 64K PCTINCREASE 10); -- 사용자 생성 CREATE USER zephome IDENTIFIED BY ORACLE DEFAULT TABLESPACE TS_ZEPHOME TEMPORARY TABLESPACE TEMP; -- 사용자 수정 ALTER USER zephome IDENTIFIED BY 비밀번호; -- 사..
SELECT '20060907' AS "날짜" , CEIL((TO_NUMBER(SUBSTRB('20060907', -2, 2)) + 7 - TO_NUMBER(TO_CHAR(TO_DATE('20060907','YYYYMMDD'),'D')))/7) AS "월별 주차" FROM DUAL; 출처 : 오라클 클럽
-- 주차에 포함된 날짜 SELECT NEXT_DAY(TO_DATE(2006||'0101','RRRRMMDD') + (35) * 7, 2)+1, TO_CHAR(SYSDATE, 'IW') FROM DUAL-- 금일의 주차 SELECT TO_CHAR(SYSDATE, 'IW') FROM DUALSELECT DENSE_RANK() OVER(ORDER BY TRUNC(TO_DATE('200609'||TO_CHAR(ROWNUM),'YYYYMMDD'),'d'))||'주차' FROM DUAL-- 해당월의 마지막 주차 구하기 SELECT CEIL((TO_CHAR(LAST_DAY(TO_DATE('200601','yyyymm')),'dd') + TO_CHAR(TO_DATE('200601'||'01'),'d') - 1) / ..
오라클 8i, 9i 언인스톨 테스트해보니 10g도 적용되네요. * 가장 깔금하게 지우는 방법 1. Universal Installer를 통해서 프로그램을 삭제 2. 레지스트리를 삭제 - 실행 - regedit 3. 서비스 정지 4. 시스템 환경변수 PATH, CLASSPATH에서 ORACLE관련디렉토리 삭제* 오라클에서 설치한 모든 경로를 삭제 1. C:\ORACLE Home 디렉토리 삭제(HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ORACLE_HOME에서 확인) 2. C:\Program Files\Oracle 디렉토리까지 삭제 3. CWI32.DLL 파일이 삭제가 안되는 경우엔 시스템 리부팅 후 삭제* 레지스트리 삭제( 시작 -> 실행 -> regedit) 1. HKEY_CURREN..
DELETE FROM 테이블명 a WHERE rowid > ( SELECT MIN(ROWID) FROM 테이블명 b WHERE b.칼럼 = a.칼럼 )