zoukankan      html  css  js  c++  java
  • 第二百八十二节,MySQL数据库-MySQL视图

    MySQL数据库-MySQL视图

    1、视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,并可以将其当作表来使用。

    2、也就是说视图是SQL语句查询到的数据动态组合的临时虚拟表,创建视图,以后如果要查询视图里的相同数据,就不必在写查询语句了,直接将视图当做表来使用,解决重复写语句问题

    举例:有这样一张表

    查询到年龄20岁的数据

    -- 查询到年龄20岁的数据
    SELECT id,yhm,xb,nl FROM usr WHERE nl = 20;

    这个查询结果,就可以创建成视图,以后如果要这个查询,就不必在写查询语句了,直接将视图当做表来使用

    1、创建视图

    CREATE VIEW 视图名称 AS  SQL语句

    -- CREATE VIEW 视图名称 AS  SQL语句
    -- 查询表里nl字段等于20的数据创建视图
    CREATE VIEW usr_nl AS
    SELECT
        id,
        yhm,
        xb,
        nl
    FROM
        usr
    WHERE
        nl = '20';

    视图虚拟表,也就是SQL语句的查询结果

    2、使用视图

    使用视图时,将其当作表进行操作即可,由于视图是虚拟表,所以无法使用其对真实表进行创建、更新和删除操作,仅能做查询用。

    SELECT * FROM `usr_nl`;

    3、修改视图

    ALTER VIEW 视图名称 AS SQL语句

    -- ALTER VIEW 视图名称 AS SQL语句
    ALTER VIEW usr_nl AS
    SELECT
        id,
        yhm,
        xb,
        nl
    FROM
        usr
    WHERE
        nl = '21';

    4、删除视图

    DROP VIEW 视图名称

    -- DROP VIEW 视图名称
    DROP VIEW usr_nl;
  • 相关阅读:
    同时加入两个对等组,在一个对等组中能不能发现另一个对等组发布的通告?
    同步与List
    转:面对JXTA,我迷茫了
    How to inject a new Action into existing Node?
    Eclipse RCP实现自定义闪屏
    Coolface
    关于ResolverService
    关于自定义通告ID的设置
    数字证书中主题(Subject)中字段的含义
    使用CryptoAPI解析X509证书和P12证书
  • 原文地址:https://www.cnblogs.com/adc8868/p/6993190.html
Copyright © 2011-2022 走看看