![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mysql
文章平均质量分 53
一 路
不会就从不会到会
展开
-
MySQL之索引下推
在MySQL5.6之前的版本,这个查询只能在联合索引里匹配到名字是 ‘LiLei’ 开头的索引,然后拿这些索引对应的主键逐个回表,到主键索。索引下推会减少回表次数,对于innodb引擎的表索引下推只能用于二级索引,innodb的主键索引(聚簇索引)树叶子节点上保存的是全。MySQL 5.6引入了索引下推优化,可以在索引遍历过程中,对索引中包含的所有字段先做判断,过滤掉不符合条件的记录之后再回表,可。滤age和position这两个字段,拿着过滤完剩下的索引对应的主键id再回表查整行数据。原创 2022-10-17 11:40:40 · 341 阅读 · 1 评论 -
Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column问题修复
details:"Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'geeznv_example_test.t_0.到货日期' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by"原创 2021-09-08 11:39:38 · 372 阅读 · 0 评论 -
MySQL执行计划 Extra出现Using index condition 原因与解决方法
Extra中using index condition代表查询条件中虽然出现了索引列,但是有部分条件无法使用索引,会根据能用索引的条件先搜索一遍再匹配无法使用索引的条件。执行如下sql的执行计划结果:EXPLAIN SELECT * FROM tableName WHERE (name= ‘123123’ AND owner_id = 1);执行如下sql的执行计划结果:EXPLAIN SELECT * FROM tableName WHERE (name= ‘123123’ AND owner_原创 2021-07-29 16:26:18 · 14773 阅读 · 4 评论 -
查询哪些 B+树索引未被使用过
查询哪些 B+树索引未被使用过,在 MySQL 数据库中,可以通过查询表sys.schema_unused_indexes,查看有哪些索引一直未被使用过,可以被废弃。SELECT * FROM sys.schema_unused_indexesWHERE object_schema != 'performance_schema' and object_schema = '对应的数据库实例';...原创 2021-07-19 19:57:06 · 249 阅读 · 0 评论 -
将MySQL数据库中的表结构导入到excel
在工作中有时候需要交付一些文档,其中比如数据库方面的数字字典需要用一个excel表。环境初始化:创建我们需要的表,如:user表;CREATE TABLE `user` ( id INT ( 11 ) NOT NULL AUTO_INCREMENT, user_name VARCHAR ( 10 ) NOT NULL DEFAULT '' COMMENT '用户名称', `password` VARCHAR ( 8 ) NOT NULL COMMENT '密码', create_timesta原创 2021-03-09 15:22:50 · 656 阅读 · 0 评论 -
MySql之varchar与char的区别
区别:1.定长和变长char 表示定长,长度是固定的,varchar表示变长,即长度可变。char如果插入的长度小于定义长度时,则用空格填充;varchar插入时长度小于定义长度时,还是按实际长度存储,插入多长就存多长。由于char长度固定,char的存取速度还是要比varchar要快得多,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以会占据多余的空间,是以空间换取时间效率。varchar则刚好相反,以时间换空间。char存储定长数据很方便,char字段上的索引效率原创 2021-02-02 14:09:55 · 825 阅读 · 2 评论 -
联合索引(辅助索引)在B+树的结构
在什么是索引这篇文章中介绍了索引的常见的数据结构,其对应数据结构的图是以主键索引来讲解的。本文我们一起看下联合使用在B+树的结构是怎么样的?联合索引是什么对多个字段同时建立的索引(有顺序,ABC,CBA是完全不同的两种联合索引);假设联合索引为age,name,school组合的其在B+树的结构如下:联合索引的叶子节点中data数据存储的是主键id;如果要查询语句中查询的是表中所有的数据,则先通过联合索引树找到主键ID,然后再根据主键索引树找到对应data数据;联合索引中一个节点中会按照索引从原创 2020-11-04 10:34:41 · 2545 阅读 · 0 评论 -
MySQL索引底层结构
当数据库的数量太大,sql查询速度比较慢的时,大部分人应该都回给相关的字段添加索引,那索引是什么呢?本文以mysql数据库为例进行相关的闲谈;索引是什么?索引是一种数据结构,一个高效获取数据的排好序的数据结构;常见的索引数据结构:二叉树红黑树Hash表B-Tree我们知道MySQL数据库底层使用的索引数据库结构是B树中的B+树;那为什么不是其他几种数据类型呢?假设我们要存储的数据如下:col1col2135217324445515原创 2020-10-31 16:02:41 · 395 阅读 · 2 评论