zoukankan      html  css  js  c++  java
  • MySQL学习笔记(10):视图

    本文更新于2019-06-22,使用MySQL 5.7,操作系统为Deepin 15.4。

    目录

      为了便于描述,此处将创建视图的DDL复述一次,其已于“SQL”章节描述。

      CREATE [OR REPLACE] [ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}] VIEW viewname [(colname[, ...])]
      AS select_statement [WITH [CASCADE|LOCAL] CHECK OPTION]
      

      视图的行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的。

      MySQL视图的定义有一些限制,如在FROM关键字后面不能包含子查询,这和其他数据库是不同的。通过将子查询的内容定义成另一个视图,然后对该视图再创建视图即可实现类似的功能。

      视图分可更新视图和不可更新视图,以下类型的视图是不可更新的:

      • 常量视图。
      • 包含以下关键字的SQL语句:聚合函数(SUMMINMAXCOUNT等)、DISTINCTGROUP BYHAVINGUNIONUNION ALL
      • SELECT中包含子查询,如`SELECT (SELECT colname FROM tablename LIMIT 1)。
      • JOIN
      • FROM一个不能更新的视图。
      • WHERE子句中的子查询引用了FROM子句中的表。
    • 相关阅读:
      mac 安装ROS2
      193 最长有效括号
      个人笔记
      个人笔记
      个人笔记-大佬主页
      笔记-吴恩达老师机器学习及深度学习
      个人笔记
      转载-资源链接
      枚举类型
      333333333333333333333333
    • 原文地址:https://www.cnblogs.com/garvenc/p/mysql_learning_10_view.html
    Copyright © 2011-2022 走看看