📅  最后修改于: 2023-12-03 15:18:08.775000             🧑  作者: Mango
在关系型数据库中, 视图是一个虚拟的表, 是通过一个查询语句(SELECT语句)定义的. 它并不实际存储数据, 而是根据基础表的数据来呈现不同的视角.
视图可以简化复杂的查询操作, 只需要向视图查询, 而不需要查询多个关联表. 同时它也可以增强数据的安全性, 可以通过视图来对基础表进行控制, 防止对某些敏感数据的直接访问.
创建视图使用CREATE VIEW语句, 语法如下:
CREATE [OR REPLACE] [FORCE|NO_FORCE] [VIEW] view_name
[(column1, column2, ...)] AS subquery
[WITH CHECK OPTION [CONSTRAINT constraint]]
[WITH READ ONLY [CONSTRAINT constraint]]
示例:
CREATE VIEW employee_v AS
SELECT emp_id, emp_name, salary
FROM employee
WHERE salary > 5000;
以上语句创建了一个名为employee_v的视图, 显示了所有工资大于5000的员工的ID, 姓名和薪水.
使用视图与查询表的语法一致, 只需使用视图名代替表名即可.
SELECT * FROM employee_v;
视图也可以作为其他查询语句的子查询.
示例:
SELECT department, AVG(salary) as avg_salary
FROM employee_v
GROUP BY department;
以上语句计算了每个部门的薪水平均数, 并显示在结果集中.