1. 단순 뷰 생성
CREATE [OR REPLACE] [ FORCE | NOFORCE] VIEW view
[ (alias, alias,;;;)]
AS subquery;
* OR REPLACE : 기존 뷰와 동일한 이름으로 뷰를 재생성하는 경우
* FORCE : 기본 테이블의 존재 여부에 상관없이 뷰 생성
* NOFORCE : 기본 테이블이 존재할 경우에만 뷰 생성, 기본 값
* ALIAS : 기본 테이블의 칼럼 이름과 다르게 지정한 뷰의 칼럼 이름
ex)CREATE VIEW v_stud_dept101(학번, 이름, 학과번호)
AS SELECT studno, name, deptno
FROM student
WHERE deptno = 101;
2. 복합 뷰 생성
CREATE VIEW v_stud_dept102(학번, 이름, 학년, 학과이름)
AS SELECT s.studno, s.name, s.grade, d.dname
FROM stduent s, department d
WHERE s.deptno=d.deptno
AND s.deptno=102;
3. 함수를 이용한 뷰 생성
CREATE VIEW v_prof_avg_sal
AS SELECT deptno, SUM(sal) sum_sal, AVG(sal) avg_sal
FROM professor
GROUP BY deptno;
4. 인라인 뷰 (inline view) : FROM 절에 서브쿼리 사용하여 생성한 임시 뷰를 의미
SELECT dname, avg_height, avg_weight
FROM ( SELECT deptno, avg(height) avg_height,
avg(weight) avg_weight
FROM student
GROUP BY deptno) s, department d
WHERE s.deptno = d.deptno;
5. 뷰의 삭제
DROP VIEW view;
ex) DROP VIEW v_stud_dept101;
6. 뷰와 관련된 데이터 딕셔너리
: USER_VIEWS - 사용자가 생성한 모든 뷰를 볼 수 있다.
* view는 index를 만들 수 없다.
CREATE [OR REPLACE] [ FORCE | NOFORCE] VIEW view
[ (alias, alias,;;;)]
AS subquery;
* OR REPLACE : 기존 뷰와 동일한 이름으로 뷰를 재생성하는 경우
* FORCE : 기본 테이블의 존재 여부에 상관없이 뷰 생성
* NOFORCE : 기본 테이블이 존재할 경우에만 뷰 생성, 기본 값
* ALIAS : 기본 테이블의 칼럼 이름과 다르게 지정한 뷰의 칼럼 이름
ex)CREATE VIEW v_stud_dept101(학번, 이름, 학과번호)
AS SELECT studno, name, deptno
FROM student
WHERE deptno = 101;
2. 복합 뷰 생성
CREATE VIEW v_stud_dept102(학번, 이름, 학년, 학과이름)
AS SELECT s.studno, s.name, s.grade, d.dname
FROM stduent s, department d
WHERE s.deptno=d.deptno
AND s.deptno=102;
3. 함수를 이용한 뷰 생성
CREATE VIEW v_prof_avg_sal
AS SELECT deptno, SUM(sal) sum_sal, AVG(sal) avg_sal
FROM professor
GROUP BY deptno;
4. 인라인 뷰 (inline view) : FROM 절에 서브쿼리 사용하여 생성한 임시 뷰를 의미
SELECT dname, avg_height, avg_weight
FROM ( SELECT deptno, avg(height) avg_height,
avg(weight) avg_weight
FROM student
GROUP BY deptno) s, department d
WHERE s.deptno = d.deptno;
5. 뷰의 삭제
DROP VIEW view;
ex) DROP VIEW v_stud_dept101;
6. 뷰와 관련된 데이터 딕셔너리
: USER_VIEWS - 사용자가 생성한 모든 뷰를 볼 수 있다.
* view는 index를 만들 수 없다.
'Database > Oracle' 카테고리의 다른 글
데이터 무결성 제약조건 (1) | 2009.12.30 |
---|---|
인덱스(Index) (1) | 2009.12.30 |
Admin Workshop 1 - 구조 10g (0) | 2009.12.30 |
Query 실행 과정 10g (1) | 2009.12.30 |
10g RAC의 Load Balancing과 Failover (1) | 2009.12.30 |