文章详情页
c# - mysql 查询优化 ?
浏览:120日期:2022-06-12 17:32:02
问题描述
1、100万多条数据,求count 速度超慢,请大神看下该怎么优化下
2、代码:
SELECT COUNT(*)FROM `score`INNER JOIN `users` ON ( `score`.`UID` = `users`.`UID`)WHERE (`score`.`Score` >= 10)AND (`score`.`Score` <= 81);
3、索引
user表
问题解答
回答1:count(id) 不要 count(*)
回答2:你是左联了1个表,建议给UID加索引
回答3:统计为什么要内联表呢,如果要分组使用group by UID不是更好么
回答4:语句简单,索引正常,不应该慢,可以通过explain + 语句 把执行计划贴出来看看。另外users表结构也贴下,如果UID是users表的主键的话,则可以去掉表的连接
回答5:没看出连表的必要性,你只要统计分数段的数据数量,没看出和user表有什么不关系,直接单表count就好了
相关文章:
1. vue.js - Vue 如何像Angular.js watch 一样监听数据变化2. index.php错误,求指点3. html5和Flash对抗是什么情况?4. javascript - 安装cnpm一直出错5. javascript - webupload上传图片到node服务6. javascript - QWebEngineView 如何爬 angular 的动态数据?7. java - 多叉树求值,程序高手,算法高手看过来8. javascript - bootstrap table固定列之后宽度无法对齐怎么解决?9. objective-c - iOS 关于上传word文档问题10. html - 只有一个div时如何利用css画出自己需要的任意图形?有哪些限制?
排行榜
