mysql
何志仁
这个作者很懒,什么都没留下…
展开
-
SQL优化——Range checked for each record
百度了一下,这个原因是因为关联表的字符集不一致,导致索引失效,改为相同字符集之后效率大大增加。原创 2023-06-28 10:54:48 · 1001 阅读 · 0 评论 -
SQL调优—Range checked for each record (index map: 0x1)
问题使用explain查看sql语句的执行计划,发现Extra给出了Range checked for each record (index map: 0x1)这个提示。我写的sql语句是一个left join关联查询,关联其他表效率都正常,唯独关联其中一张表,就查询的特别慢,经过查找资料,终于发现,原来是关联查询的连接条件使用的字段,在mysql数据库中的排序方式设置的不一致:统一两个关联字段的排序方式后,效率大幅提高。...原创 2021-07-20 10:07:16 · 5580 阅读 · 0 评论 -
SpringBoot+MyBatis+Redis实现SSO单点登录系统(二)
三、代码配置文件配置数据库,redis等相关的信息。# See http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html# Thymeleaf配置spring.thymeleaf.cache=falsespring.thymeleaf.mode=...原创 2018-06-14 14:45:09 · 5459 阅读 · 13 评论 -
数据库查询注意事项及索引使用
一、Navicat数据库查询注意事项由于需要统计生产环境的数据,按月份统计的话大概是几十万一条,全部月份加起来几百万条数据,被我搞挂了。。。原因就是在关联查询时候,查询字段没有用索引字段,导致数据一直处于查询状态,无数次的点击停止按钮,却发现根本停不下来。最后不得已把进程关了,然后悲剧就来了,我改了sql,加了索引字段,也查不出数据了。只好让同事帮忙重启数据库服务。此次事故让我了解到索引的重要...原创 2018-12-25 10:23:14 · 1703 阅读 · 0 评论 -
Explain分析sql语句执行效率
一、Explain介绍及使用在工作中,我们用于捕捉性能问题最常用的就是打开慢查询,定位执行效率差的SQL,那么当我们定位到一个SQL以后还不算完事,我们还需要知道该SQL的执行计划,比如是全表扫描,还是索引扫描,这些都需要通过EXPLAIN去完成。EXPLAIN命令是查看优化器如何决定执行查询的主要方法。explain的使用很简单,在select语句前加上explain就ok了。我在use...原创 2018-12-25 17:07:10 · 1430 阅读 · 0 评论 -
Mysql中IF()函数用法及排序中case when的使用
1.MySql中IF表达式的用法IF(expr1,expr2,expr3)eg: select *,if(sva=1,"男","女") as ssva from taname where sva != ""如果 expr1 是TRUE (expr1 <> 0 and expr1 <> NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。IF(...原创 2019-06-19 20:17:38 · 666 阅读 · 0 评论