作为基准的SQL查询

2022-07-18 00:00:00 benchmarking mysql

我有两个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

希望能有所帮助!

相关文章