MySQL 视图
小编:啊南 223阅读 2020.11.27
什么是视图 ( view ) ?
视图,即虚拟表,通过底层接口封装的 SQL 语句查询到的内容作为虚拟表中的数据,因此视图中的记录来自数据表,它本身不存储数据。
视图可以连接一个或多个数据表的部分字段,也可以针对不同的用户创建不同的查询视图。
如何创建视图 ?把经常查询的结果集放到虚拟表中,提升使用效率
CREATE VIEW 视图名 AS SELECT 字段1,字段2 FROM 表 where 条件; #当视图创建之后,它就相当于一个虚拟表,可以直接使用: SELECT * FROM 视图名;嵌套视图
创建好一张视图之后,还可以在它的基础上继续创建视图修改视图
#在创建视图时加上 or replace ,即视图存在则替换,否则创建 CREATE or replace VIEW 视图名 AS SELECT 字段1,字段2 FROM 表 where 条件;删除视图
DROP VIEW 视图名;用视图对数据格式化
#经常需要输出某个格式的内容 CREATE VIEW 视图名 AS SELECT CONCAT(字段1, '(' , 字段2, ')') AS 别名 FROM 表1 JOIN 表2 on 条件; #查询视图 SELECT * FROM 视图名; #结果:字段1(字段2)视图的优点
安全性:虚拟表是基于底层数据表的,我们在使用视图时,一般不会轻易通过视图对底层数据进行修改
简单清晰:视图是对 SQL 查询的封装,它可以将原本复杂的 SQL 查询简化,这样就好比我们在进行模块化编程一样,不仅结构清晰,还提升了代码的复用率。
视图和临时表的区别?在实际工作中,我们可能会见到各种临时数据。比如说网页中存储用户登录信息的cookie等, 这里就需要用到临时表了,临时表是真实存在的数据表,不过它不用于长期存放数据,只为当前连接存在,关闭连接后,临时表就会自动释放。
另外,我们也需要了解到视图是虚拟表,本身不存储数据,如果想要通过视图对底层数据表的数据进行修改也会受到很多限制,通常我们是把视图用于查询。
相关推荐
- MySQL|Aborted connection 日志分析 一 前言作为运维DBA,我们经常会在数据库的err.log中查看到如下种类的报错信息:[Warning] Aborted connection xx to db: db user: xxx host: hostname (Got an error reading communication packets)[Warning] Aborted connection xx to db:unconnected user: …
- 3DMAX提示和技巧 本主题标识使用 Civil View 的一些重要提示和技巧。常规使用屏幕分辨率至少为 1280x1024 的 Civil View。低于此分辨率时,一些面板将占用过多屏幕空间。 将视口设置为线框显示以达到最佳性能。 要尽可能简化用户界面,请在单个视口中工作并关闭 3ds Max 命令面…