MySQL/MariaDB表表达式(3):视图】的更多相关文章

视图是表表达式的一种,所以它也是虚拟表.对视图操作的时候会通过语句动态的从表中临时获取数据. 1.创建.修改视图 CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW [IF NOT EXISTS] view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION] ALTER [ALGORITHM = {U…
本文目录: 1.非递归CTE 2.递归CTE 2.1 语法 2.2 递归CTE示例(1) 2.3 递归CTE示例(2) 2.4 递归CTE示例(3) 公用表表达式(Common Table Expression,CTE)和派生表类似,都是虚拟的表,但是相比于派生表,CTE具有一些优势和方便之处. CTE有两种类型:非递归的CTE和递归CTE. CTE是标准SQL的特性,属于表表达式的一种,MariaDB支持CTE,MySQL不支持. 1.非递归CTE CTE是使用WITH子句定义的,包括三个部分…
1)验证环境 源库:192.168.8.75 centos 7.5 mysql8.3 目标库:192.168.8.68 redhat 6.8 mysql5.7 2)登录源库并创建源表 $ mysql -u root -ppaasword -h 192.168.8.75 mysql> create database db_test; mysql> use db_test; mysql> create table t1(c1 int,c2 char(100)); mysql> inse…
概述 表表达式是一种命名的查询表达式,代表一个有效地关系表.可以像其他表一样,在数据处理中使用表表达式. SQL Server支持四种类型的表表达式:派生表,公用表表达式,视图和内联表值函数. 为什么使用表表达式: 1.使用表表达式的好处是逻辑方面,在性能上没有提升. 2.通过模块化的方法简化问题的解决方案,规避语言上的某些限制.在外部查询的任何字句中都可以引用在内部查询的SELECT字句中分配的列别名.比如在SELECT字句中起的别名,不能在WHERE,group by等字句(逻辑顺序位于SE…
概述 表表达式是一种命名的查询表达式,代表一个有效地关系表.可以像其他表一样,在数据处理中使用表表达式. SQL Server支持四种类型的表表达式:派生表,公用表表达式,视图和内联表值函数. 为什么使用表表达式: 1.使用表表达式的好处是逻辑方面,在性能上没有提升. 2.通过模块化的方法简化问题的解决方案,规避语言上的某些限制.在外部查询的任何字句中都可以引用在内部查询的SELECT字句中分配的列别名.比如在SELECT字句中起的别名,不能在WHERE,group by等字句(逻辑顺序位于SE…
在Mysql数据库中,Mysql Merge表有点类似于视图.下面就让我们来一起了解一下Mysql Merge表都有哪些优点,希望对您能有所帮助. Mysql Merge表的优点: A: 分离静态的和动态的数据 B:利用结构接近的的数据来优化查询 C: 查询时可以访问更少的数据 D:更容易维护大数据集 E: 可以通过修改.mrg文件来修改Merge表,当然也可以用alter进行修改,修改后要通过FLUSH TABLES刷新表缓存,此法可以动态增加减少子表 创建方法,例: mysql>CREATE…
今天遇到一个奇怪的问题,项目突然要从mysql切换到sql server数据库,包含order by 子句的嵌套子查询报错. 示例:select top 10 name,age,sex from ( select * from user order by id desc) temp; 在mysql数据库没有问题,但是sql server中报错: [Err] 42000 - [SQL Server]除非另外还指定了 TOP 或 FOR XML,否则,ORDER BY 子句在视图.内联函数.派生表.…
 MySQL/MariaDB数据库的视图(VIEW) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.视图概述 1>.什么是视图 视图就是一个虚拟的表,保存有实表的查询结果.换句话说,视图并不存储数据,视图的数据来自于实体表(基表). 视图中的数据事实上存储于“基表”中,因此,其修改操作也会针对基表实现:其修改操作受基表限制. 优点: 1>.将繁琐的查询语句定义为视图,便于下此调用时方便; 2>.视图可以隐藏表结构,尤其是比较铭感的数据(财务薪资查询等); 缺点:…
MySQL/MariaDB数据库的多表查询操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.单表查询小试牛刀 [root@node105.yinzhengjie.org.cn ~]# cat yinzhengjie_innodb.sql -- MySQL dump 10.13 Distrib 5.5.33, for Linux (x86_64) -- -- Host: localhost Database: yinzhengjie -- ----------------…
环境说明: mysql版本:5.5.57-log 操作系统:Red Hat Enterprise Linux Server release 6.6 (Santiago) 需求:查看当前数据库下所有的表,包括视图: show tables; 查询结果: 备注:show tables显示的就是当前数据库下的所有的表和视图,如,ts开图的就都是表,v_开头的是视图. 文档创建时间:2018年3月8日10:02:14…