gpt4 book ai didi

mysql - 加快此 MySQL 语句

转载 作者:可可西里 更新时间:2023-11-01 07:06:40 25 4
gpt4 key购买 nike

我正在尝试获取存储在 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.Clock
WHERE seotcresults_v2.CampusID = 40
AND seotcresults_v2.Term = 201011
ORDER BY seotc.Clock

更新:

感谢所有回复。表结构(至少)是这样的:

seotc:|编号 |时钟 |校园编号 |术语 |

seotcresults_v2:|编号 |时钟 |校园编号 |术语 |一季度 | Q2 | ...等等

Id 是每个表中调查和调查结果的自增索引

其中 'Clock' 是讲师的 Id,可以在 seotcseotcresults_v2 表中多次找到,因为它们有多个类和为每个类完成多个学期的多项调查。我基本上是在尝试根据给定学期在给定校园内对讲师的调查数量与给定这些相同参数时发布的结果数量来确定响应率。这有帮助吗?

我很快也会尝试运行 EXPLAIN。

最佳答案

首先要检查的是:WHERE 子句列是否已编入索引?

然后:你需要ORDER BY吗,它是一种排序,而且很昂贵。

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

关于mysql - 加快此 MySQL 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4400217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com