CREATE [OR REPLACE] [FORCE|NOFORCE]VIEW view [(alias[, alias]...)] AS subquery [WITH CHECK OPTION [CONSTRAINT constraint]] [WITH READ ONLY [CONSTRAINT constraint]];
b)子查询可以是复杂的 SELECT语句
c)创建视图举例
CREATE VIEW empvu80
AS SELECT employee_id, last_name, salary
FROM employees
WHERE department_id = 80;
Viewcreated.
d)描述视图结构
DESCRIBE empvu80
e)创建视图时在子查询中给列定义别名
CREATE VIEW salvu50
AS SELECT employee_id ID_NUMBER, last_name NAME,
salary*12ANN_SALARY
FROM employees
WHERE department_id = 50;
View created.
f)在选择视图中的列时应使用别名
5.查询视图
SELECT *
FROM salvu50;
6.修改视图
a)使用CREATE ORREPLACE VIEW 子句修改视图
CREATE OR REPLACE VIEW empvu80
(id_number, name,sal, department_id)
AS SELECT employee_id, first_name || ' ' || last_name,
salary,department_id
FROM employees
WHERE department_id = 80;
View created.
b)CREATE VIEW 子句中各列的别名应和子查询中各列相对应
7.创建复杂视图
创建复杂视图举例
CREATE VIEW dept_sum_vu
(name, minsal,maxsal, avgsal)
AS SELECT d.department_name, MIN(e.salary),
MAX(e.salary),AVG(e.salary)
FROM employees e, departments d
WHERE e.department_id = d.department_id
GROUP BY d.department_name;
CREATE OR REPLACE VIEW empvu10
(employee_number, employee_name, job_title)
AS SELECT employee_id, last_name, job_id
FROM employees
WHERE department_id = 10
WITH READ ONLY;