1.复杂视图的创建
从雇员表和部门表中查询部门名称、平均薪水、最低薪水、最高薪水等信息,创建一个复杂视图。
CREATE OR REPLACE VIEW DEPT_SALARY_VIEW(DEPT_NAME,AVG_SAL,MIN_SAL,MAX_SAL)
AS
SELECT D.DEPARTMENT_NAME,ROUND(AVG(E.SALARY)),MIN(E.SALARY),MAX(E.SALARY)
FROM DEPARTMENTS D,EMPLOYEES E
WHERE E.DEPARTMENT_ID=D.DEPARTMENT_ID
GROUP BY DEPARTMENT_NAME;
2.简单视图的DML操作
(1)删除简单视图行:
DELETE FROM EMP_VIEW WHERE EMPLOYEE_ID=208;
(2)更新简单视图行
UPDATE EMP_VIEW SET SALARY=20000 WHERE EMPLOYEE_ID=207;
(3)插入简单视图行
向视图中插入数据时,其实是插入到表中,所以当插入的数据不包含表中的非空字段时,数据库就会报错,所以需要另外创建都是非空字段的视图。