随笔分类 -  MySQL优化

摘要:今天查看MySQL慢查询日志,查看一个四表关联的SQL操作,耗时1006s。这次也是基于基于子查询的思路,对上表进行优化。使时间复杂度降到n^2级别。但优化之后时间反而是原来的三倍多。 原SQL语句: 耗时1s多, 优化后的语句: 查看其执行计划后可知: 修改后的执行计划: 由于索引的存在:原SQL 阅读全文
posted @ 2018-08-15 21:59 流沙若水 阅读(233) 评论(0) 推荐(0)
摘要:今日给人查找数据,时间关系,写个比较粗暴的SQL语句: where go.appId = dt.app_id and dt.data_key = dd.dict_type and dict_code = go.xingZhenQuYu and dt.data_key_name = 'XING_ZHE 阅读全文
posted @ 2018-08-15 21:58 流沙若水 阅读(167) 评论(0) 推荐(0)
摘要:近日查看SQL慢查询日志,发现对于in的查询总是出现超时问题。超时相关SQL语句:select * from flow_ru_bizvar where businessId IN () and status = 0。可以看到在这句SQL中,最耗时的就是因为in的原因。这里in的对象是一个Long类型 阅读全文
posted @ 2018-08-15 21:57 流沙若水 阅读(1839) 评论(0) 推荐(0)
摘要:近日整理数据库中的点单规则数据时,在写SQL语句时遇到了一个bug,解决办法以及原因整理出来。 事例SQL, 嵌套查询具有垂直上下之关系,没有水平扩展之联系。 相关知识点延伸: SQL语句执行时的顺序: 在SQL中,经常用到的关键字有select,from,where,group by,order 阅读全文
posted @ 2018-08-15 21:56 流沙若水 阅读(620) 评论(0) 推荐(0)
摘要:mysql中group by实现方式有三种,松散索引,紧凑索引,临时文件(文件排序)。 在网上看了相关的介绍,大部分介绍都比较晦涩难懂,这里说下我的理解。 在学习SQL优化时,我们都知道可以对group by进行优化的方式就是对group by引用的字段建立索引。当group by引用多个字段时,我 阅读全文
posted @ 2018-08-15 21:55 流沙若水 阅读(9945) 评论(0) 推荐(0)