我感兴趣的查询低于这一权利联接查询太慢
SELECT COUNT(a.id)
FROM users AS a
RIGHT JOIN date_log AS b
ON a.id = b.user_id
WHERE
b.meeting_date BETWEEN '2012-06-01'
AND DATE_ADD('2012-06-01', INTERVAL 1 MONTH)
GROUP BY a.id
然而,当我尝试从一个大的数据库中选择数据是太慢了。 我在查询中添加了“group by”条款以删除重复的ID。
有没有更好的方法来完成这项工作?
哪些字段建立索引?你能不能给我们的'SHOW CREATE TABLE users'和'SHOW CREATE TABLE date_log'? – raina77ow 2012-07-08 17:19:44
感谢您的意见的结果,raina.a.id是主键,b.user_id也是,并且b.meeting_date也有索引(KEY'create_date'('meeting_date')) – 2012-07-08 17:25:35
'EXPLAIN'显示什么? – raina77ow 2012-07-08 17:26:32