我有两个MySQL查询返回相同的结果。 我想知道哪一个是最好的还是优化的解决方案? 我知道MySQL分析,我只关心有替代品吗?
SELECT *
FROM users
WHERE id IN (
SELECT user_id
FROM users_courses
GROUP BY user_id
HAVING COUNT(*) >= 2
)
OR
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
谢谢
答案 0 :(得分:1)
我正在搜索MySQL基准测试,因为它也是我自己的疑问,并找到了另一个非常有趣的答案,它可以帮助您处理更复杂的查询:
Testing performance of queries in mysql
希望它有所帮助!