【发布时间】:2013-03-28 07:55:40
【问题描述】:
我有一个这样的查询。
SELECT count(*)
FROM table1 e
WHERE e.column1=1
AND e.id IN
(SELECT MAX(ID)
FROM table2 A
WHERE A.column1=1
AND A.date=CURDATE()
GROUP BY A.column2);
当我运行此查询时,由于我有数千条记录,因此花费了太多时间。如何调整查询以更好地执行。
提前致谢。
编辑:table2 中的 column2 是 Table1 的 id
【问题讨论】:
-
在此处阅读 EXPLAIN 声明 dev.mysql.com/doc/refman/5.0/en/using-explain.html
-
@MahmoudGamal table1 的 id 作为 OneToMany 与 table2 相关。这就是我需要 max(id) 的原因。
标签: mysql sql mysql-workbench