일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- librecad
- 코딩
- Android
- 리브레캐드
- mysql
- 설치
- jsp
- 설정
- 시작하기
- 잡토이
- 유니티
- 스크래치
- 톰캣
- html5
- tomcat
- 안드로이드
- s4a
- 아두이노
- 라즈베리파이
- 예제
- Unity
- 운정
- 오라클
- 파주
- MSSQL
- 잡토이 메이킹 코딩 학원
- 강좌
- oracle
- jobtoy
- Spring Security
- Today
- Total
랩제이
사용편의, 수행속도향상, 융통성 있는 View 본문
- 사용편의를 위한 View
CREATE VIEW v_emp_complex AS
SELECT empno, ename, deptno, hiredate FROM emp
WHERE (sal*comm) + 12 > 20000
AND deptno = 30
AND job = 'SALESMAN'
AND sysdate - 365 + 10 > hiredate;
SELECT * FROM v_emp_complex;
- 한글 View
CREATE VIEW 사원(사번, 성명, 부서번호, 입사일) AS
SELECT empno, ename, deptno, hiredate FROM emp
WHERE deptno = 30
- 수행속도 향상을 위한 View
- 제일 큰 값을 구하여라!
- HINT를 사용하였음 : 옵티미아저에게 힌트를 주었다. 기본은 asc이지만 인덱스를 desc 하여 조회하라
- max()를 쓰지않고 게시판이나 코드성 쿼리를 할 때 실행속도가 일정하게 나온다.
CREATE VIEW v_dept_max AS
SELECT /*+ INDEX_DESC(dept pk_dept) */ deptno
FROM dept
WHERE deptno > 0 // (인덱스를 타게) 이 검색조건에 따라서 이 인덱스를 사용하므로 준 것이다.
AND rownum = 1; // 하나이므로 제일 큰 값이 구해진다.
SELECT * FROM v_dept_max;
- 융통성 향상을 위한 VIEW
- 0.15 와 같은 값이 변동이 되므로 이걸 어플리케이션 코드에 넣지 않고, view에 넣고 생성한다.
CREATE VIEW v_emp_bonus ( empno, bouns) AS
SELECT empno, (sal+NVL(comm,0)) * 0.15
FROM emp;
'database > oracle' 카테고리의 다른 글
View 관련된 Dictionary (0) | 2012.03.21 |
---|---|
In-Line View (0) | 2012.03.21 |
보안관리를 위한 View (0) | 2012.03.21 |
View 생성, 변경 및 제거 (0) | 2012.03.21 |
100만건 이상(대량)의 데이터에서 중복키를 확인하도록 하는 방법 (0) | 2012.03.21 |