![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
文章平均质量分 93
GDUT_Ember
这个作者很懒,什么都没留下…
展开
-
MySQL(九):分区
分区分区概述分区类型RANGE分区LIST分区HASH分区KEY分区COLUMNS分区子分区分区中的NULL值分区与性能在表和分区间进行交换数据分区分区是一种表的设计模式。正确的分区可以极大地提升数据库的查询效率。分区概述分区功能并不是在存储引擎层完成的,因此不是只有InnoDB支持分区,常见的存储引擎有MyISAM和NDB等都支持分区。但是并不是所有的存储引擎都支持MySQL在版本5.1的时候就添加了对分区的支持,分区的过程是将**一个表或索引分解为多个更小、更可管理的部分。**就访问数据库的.原创 2021-04-23 23:11:03 · 204 阅读 · 0 评论 -
MySQL(八):索引
缓冲池、顺序读取和顺序读取B+树索引InnnoDB的B+树索引MyISAM的B+树索引Cardinality什么是Cardinality?B+树索引的使用OLTP与OLAP不同应用中B+树索引的使用联合索引覆盖索引INDEX HINTMulti-Range ReadIndex Condition PushdownT树索引T树概述T树的查找、插入和删除操作T树的旋转哈希索引(索引不再是B+树,而是一个散列表)散列表InnoDB存储引擎中的散列算法自适应哈希索引缓冲池、顺序读取和顺序读取根据存储介质的不同.原创 2021-04-23 23:05:33 · 336 阅读 · 0 评论 -
MySQL(七):MySQL的事务
事务编程事务概述事务的分类扁平事务带有保存点的扁平事务链事务嵌套事务分布式事务事务控制语句隐式提交的SQL语句事务的隔离级别分布式事务编程不好的事务编程习惯在循环中提交使用自动提交使用自动回滚长事务事务编程事务是数据库区别于文件系统的重要特性之一,在文件系统中,如果用户正在写文件,但是如果操作系统突然崩溃了,这个文件就很有可能被破坏了,当然,有一些机制可以把文件恢复到某个时间点,不过,如果需要保证多个文件同步,这些文件系统可能就显得无能为力了。例如,当你更新两个文件时,更新完一个文件后,在更新完第二个.原创 2021-04-23 22:57:43 · 230 阅读 · 0 评论 -
MySQL(六):游标的使用
游标面向过程和集合面向过程面向集合游标的使用游标的开销游标面向过程和集合面向过程像编程一样,将一系列SQL装在一个函数中或者存储过程中,通过调用这个函数或存储过程即可。这是SQL程序员刚开始使用数据库的阶段,此时他们没有多少处理关系模型的经验和基于集合的思想,在这一阶段,经常会滥用各种工具(游标,临时表,动态SQL语句)的情况面向集合直接一条SQL想要的结果,不需要额外的存储空间去存储。开始意识到SQL编程与面向过程和对象编程的不同之处,发现SQL是建立在基于关系模型集合理论强大基础上的产.原创 2021-04-23 22:54:35 · 180 阅读 · 0 评论 -
MySQL(五):聚合和旋转操作(Pivoting技术)
聚合聚合函数聚合的算法附加属性聚合连续聚合累积聚合滑动聚合Pivoting开放架构格式化聚合数据UnpivotingCUBE和ROLLUPROLLUP聚合聚合函数MySQL数据库支持聚合(aggregate)操作,一般在GROUP BY分组后,对单个块进行聚合时使用,不过也可以对一个表来进行使用,按照分组对同一组内的数据聚合进行统计操作,目前支持的聚合函数有以下这些AVG() 平均值BIT_AND()BIT_OR()BIT_XOR()COUNT(DISTINCT)COUNT()GRO.原创 2021-04-23 22:53:03 · 708 阅读 · 0 评论 -
MySQL(四):联接与集合操作
联接查询新旧查询语法CROSS JOININNER JOINOUTER JOINNATURAL JOINSTRAIGHT_JOIN其他联接分类SELF JOINNONEQUI JOINSEMI JOIN 和ANTI SEMI JOIN联接算法Simple Nested-Loops Join算法Block Nested-Loops Join算法集合操作UNION DISTINCT和UNION ALLEXCEPT联接查询联接查询是一种常见的数据库操作,即在两张表中进行匹配的操作,一般称之为水平操作,这是因.原创 2021-04-23 22:47:02 · 194 阅读 · 0 评论 -
MySQL(三):子查询
子查询子查询是一项不实用的功能,因为其性能是很差的,使用子查询后,SQL语句的查询性能会变得非常糟糕。子查询的优点和限制首先,子查询是指在一个SELECT语句中嵌套另一个SELECT语句。SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2)在这个例子中,SELECT * FROM t1是外部查询,后面括号的就是子查询,一般来说,子查询是嵌在外部查询中的,但也可以将两个或两个以上的子查询进行嵌套,需要注意的是,子查询是必须包含括号的。原创 2021-04-08 16:22:34 · 312 阅读 · 0 评论 -
MySQL(二):逻辑查询
逻辑查询处理SQL语言与其他编程语言最大的不同之处,在于语句的执行顺序,一般的编程语言执行代码语句都是按顺序执行,但SQL并不一定是按顺序执行的,比如,在SQL语言中,第一个被处理的子句总是FROM子句,下面来看一条完整的SQL的执行顺序SELECT DISTINCT<select_list> //对要找的列进行去重FROM <left_table> //找哪张表<join_type>JOIN<right_table> //联结类型 ON<j原创 2021-04-08 16:17:47 · 725 阅读 · 0 评论 -
MySQL(一):数据类型
MySql数据类型UNSIGNEDUNSIGNED属性就是将数字类型无符号化,无符号化的话就只有正数。例如INT,如果没有加UNSIGNED那么它的范围就是−231-2^{31}−231~2312^{31}231(INT有4个字节,也就是32位,减去符号位,只有31位),而INT UNSIGNED的范围为0~2322^{32}232,因为去掉符号位就有32位了。这看起来是一个不错的选项,特别是对住像主键这种自增的东西,开发者都希望为整数,但UNSIGNED可能会带来一些负面的影响。比如下面这个栗子原创 2021-04-08 16:11:34 · 254 阅读 · 0 评论