加快这个MySQL声明

加快这个MySQL声明,第1张

概述我正在尝试获取需要采取的调查计数,这些调查存储在seotc中,并且调查计数已完成,存储在seotcresults_v2中. seotc表保存了近10万条记录,而seotcresults_v2表只保存了一半左右.如何加快查询速度?SELECT DISTINCT seotcresults_v2.Clock, COUNT(seotc.Id) AS Su

我正在尝试获取需要采取的调查计数,这些调查存储在SEOtc中,并且调查计数已完成,存储在SEOtcresults_v2中. SEOtc表保存了近10万条记录,而SEOtcresults_v2表只保存了一半左右.如何加快查询速度?

SELECT   disTINCT SEOtcresults_v2.Clock,COUNT(SEOtc.ID) AS Surveys,COUNT(SEOtcresults_v2.ID) AS Complete FROM SEOtc JOIN SEOtcresults_v2 ON SEOtcresults_v2.Clock = SEOtc.ClockWHERE SEOtcresults_v2.CampusID = 40AND SEOtcresults_v2.Term = 201011ORDER BY SEOtc.Clock

更新:

感谢所有的回复.表格结构(最低限度)如下:

SEOtc:
| ID |时钟| CampusID |期限|

SEOtcresults_v2:
| ID |时钟| CampusID |期限| Q1 | Q2 | …等等

ID是调查和调查结果的每个表中的自动递增索引

其中“时钟”是教师的ID,可以在SEOtc和SEOtcresults_v2表中多次找到,因为它们有多个类,并且每个类为多个术语完成了多个调查.我基本上试图根据给定学期中给定学校的教师的调查数量与给定相同参数的结果数量来确定响应率.这有帮助吗?

我将尽快尝试运行EXPLAIN.

最佳答案首先要检查的是:是否将WHERE子句列索引?

那么:你需要ORDER BY,这是一种排序,而且价格昂贵.

最后,.clock列是否已编入索引?

总结

以上是内存溢出为你收集整理的加快这个MySQL声明全部内容,希望文章能够帮你解决加快这个MySQL声明所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/1168646.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-01
下一篇2022-06-01

发表评论

登录后才能评论

评论列表(0条)

    保存