我得到了一张表A和一张表B(以及一张与之无关的表C)。关系是1:n。
Table A
- id
- c_foreign_key
Table B
- id
- A_id
- datetime
表A有大约400和39,000个条目,表B大约有2000万条。
我有一个时间范围,比如从2014/01/01到2014/12/31。
在这个范围内我想要的每个月是: 计算表A中的所有条目,按c_foreign_key分组,其中表A在表B中没有条目(月 - 1年到月)。
结果应如下所示:
date c_foreign_key count(*)
--------------------------------
14/01 1 2000
14/01 2 3000
...
14/02 1 4000
14/01 2 6000
...
我已经尝试了左连接和"不在选择"每个月的表现都不是很好。
答案 0 :(得分:0)
您应该在Mysql Explain Syntax使用explain
更多信息调试SQL查询,同时您应该在index
字段上放置datetime
- es以获得更好的效果。解释通常用于查看mysql在查询中使用哪些索引。