• MySQL 视图


    ​看到这里,或许你已经对MySQL 的基本操作了如指掌,这篇文章讲解MySQL高级功能中 视图的概念及其用法。
    什么是视图 ( 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等, 这里就需要用到临时表了,临时表是真实存在的数据表,不过它不用于长期存放数据,只为当前连接存在,关闭连接后,临时表就会自动释放。
    另外,我们也需要了解到视图是虚拟表,本身不存储数据,如果想要通过视图对底层数据表的数据进行修改也会受到很多限制,通常我们是把视图用于查询。
    最后邀你进群一起学习
    关注公众号 技能锦囊
    后台回复 SQL
    扫码关注不迷路

    by~

  • 相关阅读:
    Effective Java:Ch4_Class:Item14_在public类中应该使用访问方法而不是public域
    [置顶] 学习JDK源码:可进一步优化的代码
    [置顶] 学习JDK源码:编程习惯和设计模式
    如何开展软件架构之概念架构
    POJ 3667 & 1823 Hotel (线段树区间合并)
    CF 161D Distance in Tree【树DP】
    BroadcastReceiver基础总结
    OSI七层模型具体解释
    习惯的力量之四理直气壮的借口?
    堆(stack) 之 c 和 c++模板实现(空类默认成员函数 初谈引用 内联函数)
  • 原文地址:https://www.cnblogs.com/wanzf/p/13129322.html
Copyright © 2020-2023  润新知