# 创建视图
CREATE VIEW ab
AS
SELECT * FROM data_0925_01 limit 10
select * from information_schema.views #查询所有的视图
show tables #可查看所有的视图和表
select * from information_schema.tables #查询所有的表
INNODB #一般自己后建的表属于这类
1、视图的使用条件
- 如果某个查询结果出现的非常频繁,就是要经常拿这个查询结果来做子查询,使用视图会更加方便。
2、使用视图的好处
- 简化查询语句
- 可以进行权限控制 把表的权限封闭,但是开放相应的视图权限,视图里只开放部分数据列。
- 大数据表分表的时候,比如某张表的数据有100万条,那么可以将这张表分成四个视图。 按照对id取余计算
3、创建视图 create or replace view v_test as select * from user;
- 加上OR REPLACE表示该语句还能替换已有的视图
4、调取视图 select * from v_test;
5、修改视图 alter view v_test as select * from user1;
6、删除视图 drop view if exists v_test;
7、查看视图 show tables;
- 视图放在information_schema数据库下的views表里
8、查看视图的定义 show table status from companys like ‘v_test’;
9、视图的算法——存在两种执行的算法
- Merge:合并的执行方式,每当执行的时候,先将我们的视图的sql语句与外部查询视图的sql语句,混合在一起,最终执行。
- Temptable:临时表模式,每当查询的时候,将视图所使用的select语句生成一个结果的临时表,再在当当前临时表内进行查询。