我在我的DB中有5个表:用户,log1,log2,log3和log4。 每个日志都会保存有关用户的数据(log1是登录日志等) - 每个日志都有UserID和CreateTime以及LogID作为其列。优化mysql查询
我想创建一个足够快的查询,它会告诉我每个日志有这个用户ID的次数。类似于:
select u.UserID, Count(log1.CreateTime) as l1, ... Count(log4.CreateTime) as l4
from users u left join log1 on log1.UserID = u.UserID left join ...
group by u.UserID
问题是此查询花费的时间太多。
任何人都可以帮助我优化我的查询吗?
检查查询的执行计划以确定事情发生的速度缓慢。我的猜测是你需要某个索引。 –
你的RDBMS是什么? Sql Server,MySql例如 –
@HasanBİNBOĞAmysql。 – LordKalmar