作为基准的SQL查询
我有两个MySQL查询返回相同的结果。 我想知道哪个是最好的解决方案,还是最优的解决方案? 我知道MySQL分析,我只关心是否有替代方案?
SELECT *
FROM users
WHERE id IN (
SELECT user_id
FROM users_courses
GROUP BY user_id
HAVING COUNT(*) >= 2
)
或
SELECT coding_test.users.name
FROM coding_test.users_courses
INNER JOIN coding_test.users ON coding_test.users.id = coding_test.users_courses.user_id
GROUP BY coding_test.users.name
HAVING COUNT(coding_test.users_courses.course_id) >= 2
谢谢
解决方案
我在搜索MySQL基准测试,因为我自己也有疑问,我找到了另一个非常有趣的答案,可以帮助您处理更复杂的查询:
Testing performance of queries in mysql
希望能有所帮助!
相关文章