我读过使用嵌套查询不是一个好主意,据说嵌套查询会大大降低 mysql 的速度,所以我认为我不应该使用嵌套查询,但真正的替代方法是什么?
例如,我有一个评论评分系统,它有助于将评分最高的评论放在首位,它分为 2 个表格:
comments
存储评论
comment_ratings
存储评论ID
和评价的人。
注意:只有正面评级,因此如果comment_ratings
表中存在记录,则其 +1。
所以现在如果我想为一些东西收集评论,我会喜欢
SELECT stuff, (SELECT COUNT(*) FROM comment_ratings s WHERE s.id = c.id) as votes
FROM comments c
ORDER BY votes DESC
如果不使用嵌套查询,我将如何做到这一点?