SQL 11-3. 복합뷰 생성
관련링크
본문
그룹 함수를 포함하는 복합 뷰를 생성하여 두 테이블의 값을 표시한다.
오라클 디비 예제 :
CREATE VIEW dept_sum_vu
(naem, minsal, maxsal, avgsal)
AS
SELECT d.department_name, MIN(e.salary),
MAX(e.salary), AVG(e.esalary)
FROM employees e, departments d
WHERE e.department_id = d.department_id
GROUP BY d.departement_name;
View created.
☞설명) 복합 뷰 생성
예제는 부서별로 부서 이름, 최저 급여, 최고 급여, 및 평균 급여를 표시하는 복합 뷰를 생성한다.
뷰에 대체 이름이 지정되어 있는지 이것은 뷰의 열이 함수나 표현식으로부터 파생될 경우 반드시 필요하다.
iSQL*Plus 의 DESCRIBE 명령을 사용하여 뷰의 구조를 볼 수 있다.
SELECT 문을 실행 하여 뷰의 내용을 표시한다.
SELECT *FROM dept_sum_vu;
MSSQL 디비 예제 :
CREATE VIEW dept_sum_vu
(name, minsal, maxsal, avgsal)
AS
SELECT e.pub_id, MIN(e.job_lvl),
MAX(e.job_lvl), AVG(e.job_lvl)
FROM employee e , pub_info p
WHERE e.pub_id = p.pub_id
group by e.pub_id
select * from dept_sum_vu
그룹함수가 있는 경우 행 삭제 또는 추가, 수정이 안됨.
delete from dept_sum_vu WHERE avgsal=84
삭제 또는 추가, 수정은 뷰에의해 보여지는 값이 기본 테이블에 존재하는 경우*/
뷰가 연산된 결과 값을 가진 열을 포함하고 있는 경우 DML문을 사용할 수 없다.*/