MySQL

30种SQL语句优化的方法汇总

1)对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2)应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3)应尽量避免在 where 子句中...

MySQL Test Run 测试框架详细介绍 

一、介绍 MySQL Test Run 简称MTR,是MySQL官方提供的自动化测试框架,执行脚本在发布路径的mysql-test目录下。 主要测试步骤,是通过执行一个case(*.test)中的语句(包括sql语句和其他管理语句),将case的输出记录保...

MySql索引和索引创建策略

1、B+树索引 顾名思义,结构是B+树的索引就是B+树索引,一般情况下,InnoDb引擎中创建的常规索引都是B+的结构。 B+树索引就是以下这几种。 1.1、聚集索引/聚簇索引 定义主键时,主键上自动追加的索引就是聚集索引,也称聚簇索引。 Mysql用组建...

mysql中#{}和${}的区别详解

#{}会将传入的数据当成一个字符串,会对自动传入的数据加一个双引号 order by #{userId}   这里假如userId = 111,那么解析成sql时会变成 order by "111"这里如果userI...

mysql数据库单表最大存储依据详解

引言 故事从好多年前说起。 想必大家也听说过数据库单表建议最大2kw条数据这个说法。如果超过了,性能就会下降得比较厉害。 巧了。 我也听说过。 但我不接受它的建议,硬是单表装了1亿条数据。 这时候,我们组里新来的实习生看到了之后,天真无邪的问我:"...

深入讲解数据库中Decimal类型的使用以及实现方法

1 背景 数字运算在数据库中是很常见的需求, 例如计算数量、重量、价格等, 为了满足各种需求, 数据库系统通常支持精准的数字类型和近似的数字类型. 精准的数字类型包含 int, decimal 等, 这些类型在计算过程中小数点位置是固定的, 其结果和行为比...

一篇文章看懂SQL中的开窗函数

OVER的定义 OVER用于为行定义一个窗口,它对一组值进行操作,不需要使用GROUP BY子句对数据进行分组,能够在同一行中同时返回基础行的列和聚合列。 OVER的语法 OVER ( [ PARTITION BY column ]&n...

MySql约束超详细介绍

1. 什么是约束 约束对应的英语单词:constraint 在创建表的时候,我们可以给表中的字段加上一些约束,来保证表中的数据的完整性、有效性!!! 约束的作用就是为了保证:表中的数据有效!! 2. 约束包括哪些 非空约束 not null 唯一性约束 u...

MySQL联合索引遵循最左前缀匹配原则

面试官: 我看你的简历上写着精通MySQL,问你个简单的问题,MySQL联合索引有什么特性? 心想,这还不简单,这不是问到我手心里了吗? 听我给你背一遍八股文! 我: MySQL联合索引遵循最左前缀匹配原则,即最左优先,查询的时候会优先...