SELECT ba.bug_id,
ba.bug_when,
b.short_desc
FROM bugs_activity ba
INNER JOIN bugs b
order BY bug_id DESC
LIMIT 10
上述查询应从 2 个表(bugs_activity 和 bugs)返回数据。但它只是进入了无限循环。可能出了什么问题?
在查询返回以下结果之前使用 EXPLAIN -
最佳答案
可能是因为查询中没有哪些字段构成这种关系的信息,所以结果集太大,执行超时。
您需要在连接子句中了解 BUGS 中的哪些字段与 BUGS_ACTIVITY 相关。
例如,如果您有两个表:Customer 和 Customer_Contact,则在表 Customer_Contact 中,您有一个字段是表 Customer 的外键。您需要在查询中提供以下信息:
SELECT cus.*
FROM customer cus
INNER JOIN customer_contact con ON con.customer_id = cus.id
这只是一个示例,如果您提供两个表中存在哪些字段,它可能会有所帮助。我可以想象这样的事情:
SELECT ba.bug_id,
ba.bug_when,
b.short_desc
FROM bugs_activity ba
INNER JOIN bugs b ON ba.bug_id = b.id
order BY bug_id DESC
LIMIT 10
关于mysql - 为什么以下查询需要很长时间才能显示结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27804058/