我在我的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