在查询中,我们经常把查询结果当成临时表

view可以看成是一张虚拟表,是表通过某种运算得到的一个投影

在建立视图时,不需要指定视图的列名与列类型

红框内的为select选择语句

蓝框内的与建表语句类似

在建立了view stats视图后,表的操作在视图上都可以实现

视图的作用

(1)简化查询

(2)更精细的权限控制

    比如用户表,2个网站合作,可以查询对方网站的用户

    需要向对方开放用户表权限,但是有不想开放密码字段

(3)数据多,分表时可以用到

表与视图数据变化时的关系

更改数据后

cat_id = 8 的pj有了变化

证明了:当goods表数据变化时,视图中的数据也会变化

对于这个例子,如果平均价改变,映射到table表时,无法判断修改那个table表中的哪个值,因此无法修改pj列

在删除了视图中的数据时,goods表中的数据也改变了

视图某些情况可以修改:表中的数据和视图数据要一一对应

可以删除视图

MySql cmd下的学习笔记 —— 有关视图的操作(建立表)的更多相关文章

  1. MySql cmd下的学习笔记 —— 有关视图的操作(algorithm)

    建立一张简单的查询视图,不用临时表,只用条件合并 在简单的查询中,建立临时表的开销比较大 这是可以指定algorithm选项为merge 在v2的视图中,并没有建立临时表 但在下列情况下,必须建立临时 ...

  2. MySql cmd下的学习笔记 —— 有关select的操作(in, and, where, like等等)

    为方便本节学习, 请先自行建立本表: 建一个商品表: create table goods ( -> goods_id mediumint(8) unsigned not null auto_i ...

  3. MySql cmd下的学习笔记 —— 有关分组的操作(group by)

    (一) 把建立的goods表找到 (二) 当cat_id = 3时,计算所有商品的库存量之和 计算每个cat_id下的库存量(group by) 需要用到分组,把每个红框内的计算在一起 筛选出本店价比 ...

  4. MySql cmd下的学习笔记 —— 有关select的操作(max, min等常见函数)

    先把之前建的goods表找到 找到最贵的本店价(max) 找到最便宜的本店价(min) 查出一共还有多少商品(count) 查看商品价的平均价(avg) 查看本店有多少种商品 当count(*)时 输 ...

  5. MySql cmd下的学习笔记 —— 有关select的操作(order by,limit)

    先选择goods表 set names gbk; 把本店价从低到高排序(order by) (注意)order by 要放在where, group by, having之后 查询本店价从高到低排序 ...

  6. MySql cmd下的学习笔记 —— 有关表的操作(对表中数据的增,删,改,查)

    (知识回顾) 连接数据库 mysql -uroot -p111 先建立一个新库 create database test1; use test1; 由于今天的主要内容是表的操作,建立表的详细过程不是本 ...

  7. MySql cmd下的学习笔记 —— 有关修饰器的知识(trigger)

    关于触发器的理解: 进行数据库应用软件的开发时,有时我们碰到表的某些数据的改变时,希望同时 引起其他相关数据改变的需求,利用触发器就能满足这样的需求. 触发器能在表中的某些特定数据变化时自动完成某些查 ...

  8. MySql cmd下的学习笔记 —— 引擎和事务(engine,transaction)

    engine 引擎就是MySQL存储数据的不同方式 myisam 插入速度快 支持全文索引 innoDB 插入速度慢 支持事务安全 假设两人同时购买火车票,两人同时看到只有一张火车票,几乎同时下单 或 ...

  9. MySql cmd下的学习笔记 —— 有关子查询的操作(where型,from型,exists型子查询)

    先找到goods表 查询goods_id最大的商品 where型的子查询 查询goods_id最大的商品(不能用排序) 把两步写成一步,就是子查询 from型子查询 查找出每种cat_id下goods ...

随机推荐

  1. Javascript的组成——EMACScript、DOM、BOM

    EMACScript:一种规范,JS必须准守它的约定,JS的核心. DOM:文档对象模型,W3C标准,JS访问HTML文档的接口. BOM:浏览器对象模型,没有统一的标准.JS访问浏览器的接口. EM ...

  2. 自定义数据类型 typedef

    其实就是为数据类型起一个别名. typedef unsigned char AGE; //字符类型AGE x; //等价于 unsigned char x; typedef int * IPointe ...

  3. MySql 5.7.23安装

    1.首先上MySql的官网下载  https://dev.mysql.com/downloads/mysql/ 选择源码包: 1. 新建/usr/local/src目录,保存下载的各类安装包 1 mk ...

  4. Tensorflow object detection API 搭建物体识别模型(二)

    二.数据准备 1)下载图片 图片来源于ImageNet中的鲤鱼分类,下载地址:https://pan.baidu.com/s/1Ry0ywIXVInGxeHi3uu608g 提取码: wib3 在桌面 ...

  5. flask模版继承和block

    模版继承和block的目的就是为了减少前端代码量 flask_ones.py #encoding:utf-8 from flask import Flask,url_for,redirect,rend ...

  6. Spring Boot笔记一 输出hello

    开始学习Spring Boot了,本篇文章你可以学到 1.Spring Boot的基本配置,输出一句hello 许嵩 2.Spring boot打包成jar包 一.Spring boot的基本配置 这 ...

  7. java用流的方式加载图片

    前端: <img ng-show="photo" class="vertical_b" id="photoImg" src=" ...

  8. EL表达式获取日期时间类型后格式化的问题

    最近在项目中遇到的问题,就是从后台取到的java.util.Date类型的数据,在前台需要格式化的问题. 开始想了很多办法,其实在JSP页面中处理很简单,JSTL提供的format标签即可解决这个问题 ...

  9. 【1】【leetcode-92】 反转链表 II

    (没过,以为简单,结构链表指针搞得很复杂出错.是有捷径的,很典型题目要记住) 反转链表 II(medium) 反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明:1 ≤ m ≤ n ≤ 链 ...

  10. python --端点调试

    python端点调试 左边三角:快速跳到下一个端点 下箭头:单不调试 斜向下箭头:跳到函数内部执行代码