当概要文件是参与者时,此查询将获取具有最多证据记录的概要文件。
在mysql查询中有什么方法可以使它更快?

SELECT profiles.*, count(*) AS counted_profiles
FROM `profiles`
INNER JOIN (SELECT ev.actor_id
            FROM evidences AS ev
            WHERE ev.actor_type = 'Profile') AS ev2
ON ev2.actor_id = profiles.id
GROUP BY ev2.actor_id
ORDER BY counted_profiles DESC LIMIT 10

最佳答案

可以在子查询中使用GROUPBY、ORDERBY和LIMIT子句,然后使用该子句进行内部联接。
这只是另一种方法,但不确定性能增益。

关于sql - 有没有一种更快的方法来计算联接上的记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1742070/

10-10 02:07