前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL 视图

MySQL 视图

作者头像
技能锦囊
发布2020-06-16 15:27:23
2.8K0
发布2020-06-16 15:27:23
举报
文章被收录于专栏:MySQL 笔记

看到这里,或许你已经对MySQL 的基本操作了如指掌,这篇文章讲解MySQL高级功能中 视图的概念及其用法。

什么是视图 ( view ) ?

视图,即虚拟表,通过底层接口封装的 SQL 语句查询到的内容作为虚拟表中的数据,因此视图中的记录来自数据表,它本身不存储数据。

视图可以连接一个或多个数据表的部分字段,也可以针对不同的用户创建不同的查询视图。

视图的地位

如何创建视图 ?

把经常查询的结果集放到虚拟表中,提升使用效率

代码语言:javascript
复制
CREATE VIEW 视图名 AS
SELECT 字段1,字段2 FROM 表 where 条件;

#当视图创建之后,它就相当于一个虚拟表,可以直接使用:
SELECT * FROM 视图名;
嵌套视图
代码语言:javascript
复制
创建好一张视图之后,还可以在它的基础上继续创建视图

修改视图

代码语言:javascript
复制
#在创建视图时加上 or replace ,即视图存在则替换,否则创建
CREATE  or replace  VIEW 视图名 AS
SELECT 字段1,字段2 FROM 表 where 条件;

删除视图

代码语言:javascript
复制
DROP VIEW 视图名;

用视图对数据格式化

代码语言:javascript
复制
#经常需要输出某个格式的内容
CREATE VIEW 视图名 AS 
SELECT CONCAT(字段1, '(' , 字段2, ')') AS 别名
FROM 表1 JOIN 表2 on 条件;

#查询视图
SELECT * FROM 视图名;

#结果:字段1(字段2)

视图的优点

安全性:虚拟表是基于底层数据表的,我们在使用视图时,一般不会轻易通过视图对底层数据进行修改

简单清晰:视图是对 SQL 查询的封装,它可以将原本复杂的 SQL 查询简化,这样就好比我们在进行模块化编程一样,不仅结构清晰,还提升了代码的复用率。

视图和临时表的区别?

在实际工作中,我们可能会见到各种临时数据。比如说网页中存储用户登录信息的cookie等, 这里就需要用到临时表了,临时表是真实存在的数据表,不过它不用于长期存放数据,只为当前连接存在,关闭连接后,临时表就会自动释放。

另外,我们也需要了解到视图是虚拟表,本身不存储数据,如果想要通过视图对底层数据表的数据进行修改也会受到很多限制,通常我们是把视图用于查询。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 技能锦囊 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是视图 ( view ) ?
  • 如何创建视图 ?
    • 嵌套视图
    • 修改视图
    • 删除视图
    • 用视图对数据格式化
    • 视图的优点
    • 视图和临时表的区别?
    相关产品与服务
    云数据库 SQL Server
    腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档