mysql--浅谈视图1
这是对自己学习燕十八老师mysql教程的总结,非常感谢燕十八老师。
依赖软件:mysql5.6
系统环境:win
视图(view)
什么是视图?
答:视图是表通过某种运算得到的一个投影,占有一定空间的虚拟表
视图的作用
1、简化查询
2、权限管理
3、数据量大时利用视图进行分表
视图的创建
# 语法
create (algorithm=marge/temptable/undefined) view 视图名 as select语句
# 示例
create view test as
select goods_id,cat_id,shop_price,goods_name
from goods;
删除视图
# 语法
drop view 视图名 # 示例
drop view test;
视图的修改
# 语法
alter view 视图名 as select语句 # 示例
alter view test as
select goods_id,cat_id,goods_name
from goods;
视图与表的关系
视图是表的查询结果,自然表的数据改变了,影响视图的结果
反之
视图的数据改变了也会影响表的数据,但是视图并不是一定能被修改的
修改视图的条件
视图的数据必须和表的数据一一对应,就像数学中函数的映射
视图中的algorith
1、merge: 当引用视图时,引用视图的语句和定义视图的语句合并产生作用
# 示例
# 创建视图的语句:
create algorithm=merge view g2 as
select goods_id,cat_id,goods_name,shop_price
from goods where shop_price> # 查询视图的语句:
select * from g2 where shop_price < ; # 最终执行的语句:
select goods_id,cat_id,goods_name,shop_price
from goods
where shop_price > and shop_price <
2、temptable: 当应用视图时,更加视图的创建语句建立一张临时表
# 示例
# 创建视图
create algorithm=temptable view g2 as
select goods_id,cat_id,goods_name,shop_price from goods
where shop_price > #查询视图的语句:
select * from g2 where shop_price < ; # 最终执行的2句话: 取数据并放在临时表,然后去查临时表.
Select goods_id,cat_id,goods_name,shop_price from goods where shop_price > ;
========> temptable # 再次查临时表
Select * from temptable where shop_price<
3、undefined:未定义,系统帮你选择
如有错误 欢迎指正
mysql--浅谈视图1的更多相关文章
- sql之浅谈视图的作用
[数据库]☆★sql之浅谈视图的作用 在一个项目的实际开发过程中牵涉到复杂业务的时候,我们不可避免的须要使用中间表来进行数据连接,有的同学就说了,我能够採用Hibernate进行主外键进行关联啊?多对 ...
- Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理
基于python+mysql浅谈redis缓存设计与数据库关联数据处理 by:授客 QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3 ...
- MySQL浅谈 LEFT JOIN
On条件(在“A left join b on conditional_expr”)决定如何从table B 中检索数据行(Matching-State); 如果B中没有行匹配On 条件,额外的B的所 ...
- mysql浅谈--事务ACID特性
mysql MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管 ...
- sql语句浅谈以及mysql遇到的问题解决见解
mysql数据库基本操作: .显示数据库和查看mysql版本 show databases; select version(); select user();查看用户 .选择数据库 use 数据库名; ...
- MySql主从配置实践及其优势浅谈
MySql主从配置实践及其优势浅谈 1.增加两个MySQL,我将C:\xampp\mysql下的MYSQL复制了一份,放到D:\Mysql2\Mysql5.1 修改my.ini(linux下应该是my ...
- 浅谈mysql主从复制的高可用解决方案
1.熟悉几个组件(部分摘自网络)1.1.drbd —— DRBD(Distributed Replicated Block Device),DRBD号称是 "网络 RAID" ...
- Linux CentOS下MySQL的安装配置之浅谈
前期必备安装:VMware虚拟机,CentOS镜像[注意:Linux下使用CentOS MySQL是不用在官网下载的,只需要配置就OK了] 下面开始正式操作: //CentOS安装MySQL之浅谈 ...
- 浅谈mysql innodb缓存策略
浅谈mysql innodb缓存策略: The InnoDB Buffer Pool Innodb 持有一个存储区域叫做buffer pool是为了在内存中缓存数据和索引,知道innodb buffe ...
- 浅谈MySQL存储引擎-InnoDB&MyISAM
存储引擎在MySQL的逻辑架构中位于第三层,负责MySQL中的数据的存储和提取.MySQL存储引擎有很多,不同的存储引擎保存数据和索引的方式是不同的.每一种存储引擎都有它的优势和劣势,本文只讨论最常见 ...
随机推荐
- vue http 请求
https://github.com/vuejs/awesome-vue#http-requests vue-resource - npm https://www.npmjs.com/package/ ...
- The Apache Thrift API client/server architecture
http://thrift.apache.org/ The Apache Thrift software framework, for scalable cross-language services ...
- The JSP specification requires that an attribute name is preceded by whitespace--异常
异常信息:org.apache.jasper.JasperException: /pages/selectedCourse.jsp (line: 4, column: 39) The JSP spec ...
- FIL代币是什么?
自从比特币价格暴涨.区块链技术火了以后,出现了币圈,币圈中有各种各样的代币,本文就和大家介绍其中的FIL代币相关内容,希望能帮助大家一点一点的了解币圈. IPFS与Filecoin的关系 ...
- [数据挖掘课程笔记]SLIQ算法
1.数据结构 主要的数据结构有:1.Attribute List 2.Class List 对于数据集,每一个属性都有一个对应的Attribute List.如上图所示,每个Attribute Li ...
- Ubuntu下安装Android studio【转】
本文转载自:http://blog.csdn.net/walleit/article/details/65696712 版权声明:本文为博主原创文章,未经博主允许不得转载. 一,软件准备 1. Lin ...
- cnn handwrite使用原生的TensorFlow进行预测
100个汉字,放在data目录下.直接将下述文件和data存在同一个目录下运行即可. 关键参数: run_mode = "train" 训练模型用,修改为validation 表示 ...
- Linux GCC常用命令学习
1简介 GCC 的意思也只是 GNU C Compiler 而已.经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言:它现在还支持 Ada 语言.C++ 语言.Java 语言.Objective ...
- 初学Java(一)
基本语法: 编写Java程序时,应注意以下几点: 1.大小写敏感:java是大小写敏感的,这就意味着标识符Hello与hello是不同的. 2.类名:对于所有的类来说,类名的首字母应该大写.如果类名由 ...
- bzoj 2006 [NOI2010]超级钢琴——ST表+堆
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2006 每个右端点的左端点在一个区间内:用堆记录端点位置.可选区间,按价值排序:拿出一个后也许 ...