mysql的B+树索引 查找使用了二分查找,redis 跳表也使用了二分查找法,kafka查询消息日志也使用了二分查找法,二分查找法时间复杂度O(logn); 参考:redis的索引底层的 跳表原理 实现 聊聊Mysql索引和redis跳表 redis的跳表原理 时间复杂度O(logn)(阿里) 参 ...
分类:
其他好文 时间:
2020-05-11 01:34:25
阅读次数:
79
explain分析查询 使用 EXPLAIN 关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的。这可以帮你分析你的查询语句或是表结构的性能瓶颈。通过explain命令可以得到: 表的读取顺序 数据读取操作的操作类型 哪些索引可以使用 哪些索引被实际使用 表之间的引 ...
分类:
数据库 时间:
2020-05-11 01:19:50
阅读次数:
85
引言 大家在开发中,还有很多童鞋在写查询语句的时候,习惯写下面这种不规范sql select * from table 而不写成下面的这种规范方式 select col1,col2,...,coln from table 我也知道,这些童鞋是图方便,毕竟再敲一堆的列名,嫌麻烦!你们上班可以问问自己的 ...
分类:
数据库 时间:
2020-05-09 14:20:12
阅读次数:
72
最近项目又用到了Mybaits。在Mybatis中分页是个比较头疼的事,因为需要我们每次都写重复的sql。好在我们有PageHelper这样的分页工具,它可以拦截你的sql,从而进行分页操作。 一、使用PageHelper分页和遇到的问题 首先我们引入maven依赖。 然后假定你有个需要分页的查询方 ...
分类:
编程语言 时间:
2020-05-09 01:22:15
阅读次数:
117
1、通过navicat 新建一个表,表名以3e开头,假设为 3exx 2、建表完成后,执行查询语句(select * from 3exx)时报语法错误,具体原因不清楚 3、在表名签名加上库名,就能正常执行(select * from database.3exx) 4、如果是把表名换成 3fxx或者e ...
分类:
数据库 时间:
2020-05-08 22:49:29
阅读次数:
91
MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。拿汉语字典的目录页(索引)打比方,我们可以按拼音、笔画、偏旁部首等排序的目录(索引)快速查找到需要的字。创建索引时,你需要确保该索引是应用在SQL查询语句的条件(一般作为WHERE子句的
分类:
数据库 时间:
2020-05-08 10:16:27
阅读次数:
115
1. DQL:(数据查询语言) 查询语句,凡是select语句都是DQL。 2. DML: (数据操作语言)insert delete update,对表当中的数据进行增删改 3. DDL: (数据定义语言)create drop alter,对表结构的增删改。 4. TCL: (事务控制语言)co ...
分类:
数据库 时间:
2020-05-07 22:55:44
阅读次数:
91
简单的查询语句(DQL) 语法格式:select 字段1,字段2,字段3...from 表名; 提示: 1、任何一条sql语句以";"结尾。 2、sql语句不区分大小写。 条件查询 语法格式: select 字段,字段.... from 表名 where 条件; 执行顺序: 先from,然后wher ...
分类:
数据库 时间:
2020-05-07 22:53:34
阅读次数:
90
饮水思源:https://www.cnblogs.com/shujiying/p/12546747.html 使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈; 在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查 ...
分类:
数据库 时间:
2020-05-07 19:50:54
阅读次数:
89