2021年3月13日

count 优化

摘要: count说明 count(a) 和 count(*) 当 count() 统计某一列时,比如 count(a),a 表示列名,是不统计 null 的。 而 count(*) 无论是否包含空值,都会统计。 MyISAM 引擎和 InnoDB 引擎 count(*) 的区别 对于 MyISAM 引擎, 阅读全文

posted @ 2021-03-13 20:40 hainingwyx 阅读(192) 评论(0) 推荐(0) 编辑

Join优化

摘要: 关联查询 Nested-Loop Join 思想:一次一行循环:从驱动表中读取行并取到关联字段,根据关联字段在被驱动表取出满足条件的行,然后取两张表的结果合集。[manual][https://dev.mysql.com/doc/refman/5.7/en/nested-loop-joins.htm 阅读全文

posted @ 2021-03-13 18:26 hainingwyx 阅读(110) 评论(0) 推荐(0) 编辑

分页查询优化

摘要: 自增且连续主键的分页查询 避免前n条记录的读取[https://dev.mysql.com/doc/refman/5.7/en/limit-optimization.html](mysql manual),可以采用: select * from t1 where id >99000 limit 2; 阅读全文

posted @ 2021-03-13 17:29 hainingwyx 阅读(72) 评论(0) 推荐(0) 编辑

order/group by优化

摘要: order by 原理 按照排序原理分[manual][https://dev.mysql.com/doc/refman/5.7/en/order-by-optimization.html],MySQL 排序方式分两种: 通过有序索引直接返回有序数据:Using index 通过 Filesort 阅读全文

posted @ 2021-03-13 17:05 hainingwyx 阅读(120) 评论(0) 推荐(0) 编辑

批量数据导入优化

摘要: 插入行所需的时间由以下因素决定[https://dev.mysql.com/doc/refman/5.7/en/insert-optimization.html](mysql manual) 连接:30% 向服务器发送查询:20% 解析查询:20% 插入行:10% * 行的大小 插入索引:10% * 阅读全文

posted @ 2021-03-13 15:33 hainingwyx 阅读(119) 评论(0) 推荐(0) 编辑

索引失效

摘要: 函数操作 对条件字段做函数操作走不了索引。 select * from t1 where date(c) ='2019-05-21'; 优化:改成范围查询 select * from t1 where c>='2019-05-21 00:00:00' and c<='2019-05-21 23:59 阅读全文

posted @ 2021-03-13 11:45 hainingwyx 阅读(54) 评论(0) 推荐(0) 编辑

导航