• mysql视图的操作


    一、创建视图的语法形式

    CREATE VIEW view_name

      AS 查询语句 ;

    使用视图

    SELECT * FROM view_name ;

    二、创建各种视图

    1.封装实现查询常量语句的视图,即所谓的常量视图

    CREATE VIEW view_test1

      AS SELECT 3.1415926;

    2.封装使用聚合函数(SUN,MIN,MAX,COUNT等)查询语句的视图

    CREATE VIEW  view_test2

      AS SELECT COUNT(name) FROM t_student;

    3.封装了实现排序功能(ORDER BY)查询语句的视图

    CREATE VIEW view_test3

      AS SELECT name from t_student ORDER BY id DESC;

    4.封装了实现表内连接查询语句的视图

    CREATE VIEW view_test4

      AS SELECT s.name

        FROM t_student AS s,t_group AS g

          WHERE s.group_id=g.id AND g.id=2;

    5.封装了实现表外连接(LEFT JOIN,RIGHT JOIN)查询语句的视图

    CREATE VIEW view_test5

      AS SELECT s.name

        FROM t_student AS s LEFT JOIN t_group AS g ON s.group_id=g.id

          WHERE g.id=2;

    6.封装了实现子查询相关查询语句的视图

    CREATE VIEW view_test6

      AS SELECT s.name

        FROM t_student AS s

          WHERE s.gruop_id IN(SELECT id FROM t_group);

    7.封装了实现记录联合(UNION,UNION ALL)查询语句的视图

    CREATE VIEW view_test7

      AS SELECT id,name FROM t_student

      UNION ALL

      SELECT id,name FROM t_group;

    三、查看视图

    1.SHOW TABLES;

    即能查看表名还会查看视图

    2.SHOW TABLE STATUS ;

    查看表和视图的详细信息

    SHOW TABLE STATUS

      FROM view LIKE "view _selectproduct" G

    查看view数据库中的view _selectproduct视图

    SHOW CREATE VIEW view_name;

    查看视图的定义信息

    3.DESCRIBE|DESC view_name;

    查看视图设计信息

    4.通过系统表查看视图信息

    USE information_schema;

    SELECT * FROM views WHERE table_name='view_selectproduct' G

    四、删除视图

    DROP VIEW view_name1,view_name2;

    可以一次删除1个或多个视图

    五、修改视图

    1.先删除视图,再重新创建视图

    2.CREATE OR REPLACE VIEW _name

      AS 查询语句;

    3.ALTER VIEW view_name

      AS 查询语句;

    六、利用视图操作基本表

    对视图数据进行添加、删除、更改等操作直接影响基本表;

    视图来自多个基本表时,不允许添加和删除数据。

    view_product是查询所有字段的视图

    1.添加数据操作

    INSERT INTO view_product VALUES(11,'pear4',12.3);

    2.删除数据操作

    DELETE FROM view_product WHERE name=‘apple’;

    3.更新数据操作

    UPDATE view_product set price=3.5 WHERE name='pear';

  • 相关阅读:
    Oracle中的substr()函数和INSTR()函数和mysql中substring_index函数字符截取函数用法:计算BOM系数用量拼接字符串*计算值方法
    (转载)SDRAM驱动笔记
    【转】Verilog阻塞与非阻塞赋值使用要点
    【转转】(筆記) always block內省略else所代表的電路 (SOC) (Verilog)
    (原創) 如何處理signed integer的加法運算與overflow? (SOC) (Verilog)
    [转载]亚稳态
    Dev Exprss 发布部署
    Dev splliter 去除中间的分割显示
    DevTreeList中的新增、修改的设计
    Oracle 常用网址
  • 原文地址:https://www.cnblogs.com/Andy-Lv/p/5357146.html
Copyright © 2020-2023  润新知