我有简单的MySQL查询,其运行速度非常慢。优化Mysql查询,
INSERT INTO People_by_County (City, County, State, score, Month_, person_id)
SELECT people.City, people.County, people.State, PPL_month.score, PPL_month.Month_, PPL_month.person_id
FROM PPL_month
INNER JOIN people ON PPL_month.person_id = people.person_id
人表中的700K行和PPL_month表中的2,9Mln行。问题是,在我对不同的表执行类似查询之前,在一个表上,另一个400Mln上有700K行,查询在6小时内完成。而且这个运行了将近24小时。任何想法为什么这么慢?当时没有其他查询正在运行,因此没有人正在使用RAM。
波纹你可以看到查询的解释。
“people”表中'person_id'列是否有索引? –
你能否提供有关表格结构的信息?你有索引吗?你是否使用MySQL EXPLAIN函数试图了解查询的内容? –
发布结构,索引,并运行它与解释(只是选择部分)并发布结果 –