含义:
理解成一张虚拟的表
视图和表的区别:
使用方式上:
二者完全相同
占用物理空间:
表是占用的;视图不占用物理空间,保存的仅仅是sql逻辑
视图的好处:
1、sql语句提高重用性,效率高。
2、和表实现了分离,提高了安全性。
视图的创建:
语法:
CREATE VIEW 视图名
AS
查询语句;
视图的增删改查:
1、查看视图的数据
SELECT * FROM my_v4;
SELECT * FROM my_v1 WHERE last_name='Partners';
2、插入视图的数据
INSERT INTO my_v4(last_name,department_id) VALUES('虚竹',90);
3、修改视图的数据
UPDATE my_v4 SET last_name ='梦姑' WHERE last_name='虚竹';
4、删除视图的数据
DELETE FROM my_v4;
视图的删除:
DROP VIEW test_v1,test_v2,test_v3;
视图的结构查看:
DESC test_v7;
SHOW CREATE VIEW test_v7;
视图逻辑的更新:
#方式一:
CREATE OR REPLACE VIEW test_v7 AS SELECT last_name FROM employees WHERE employee_id>100;
#方式二:
ALTER VIEW test_v7 AS SELECT employee_id FROM employees;
SELECT * FROM test_v7;
某些视图不能更新:
包含以下关键字的SQL语句:
分组函数、distinct、group by、having、
union或者union all
常量视图
Select中包含子查询
join
from一个不能更新的视图
where子句的子查询引用了from子句中的表