MySQL视图
什么是视图
视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,并可以将其当作表来使用。
理解:使用SQL语句获取的结果,是动态获取的,如果SQL语句很复杂,且繁多,那么我们使用的时候,就的反复的写这段语句,视图就是为了简化这个过程的。
说明:
简单的理解,就是将一个SQL语句执行获取的结果当作一张表,并为这张表取个别名,然后通过这个别名使用操作表的方式操作里面的内容。
案例:
SELECT * FROM ( SELECT nid, NAME FROM tb1 WHERE nid > 2 ) AS A WHERE A. NAME > 'alex';
视图操作
一、创建视图
格式:
格式:CREATE VIEW 视图名称 AS SQL语句
案例:
--格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS SELET nid, name FROM A WHERE nid > 4
二、删除视图
格式:
格式:DROP VIEW 视图名称
案例:
--格式:DROP VIEW 视图名称 DROP VIEW v1
三、修改视图
格式:
格式:ALTER VIEW 视图名称 AS SQL语句
案例:
-- 格式:ALTER VIEW 视图名称 AS SQL语句 ALTER VIEW v1 AS SELET A.nid, B. NAME FROM A LEFT JOIN B ON A.id = B.nid LEFT JOIN C ON A.id = C.nid WHERE A.id > 2 AND C.nid < 5
四、使用视图
select * from v1
注意:
- 使用视图时,将其当作表进行操作即可,由于视图是虚拟表,所以无法使用其对真实表进行创建、更新和删除操作,仅能做查询用。
- 视图不是真实的表,虚拟表,是由真实表操作而产生的。
- 一般用于SQL语句重复操作次数比较多的时候。
- 我们创建完后,当原表数据改变的时候,创建的时候会动态的获取内容,也会做相应的修改。