1
我試圖創建一個使用兩個表,一個叫做Message_Topic和消息的收件箱消息系統。 Message_Topic包含所有創建的主題,而Message表包含每個主題內的消息對話。MySQL消息傳遞系統慢查詢
我被困在所有主題的選擇。
我的查詢如下:
`選擇umt.intTopicId根據用戶UO,用戶U,User_Message_Topic UMT
WHERE umt.intCreatorId = uo.intUserId AND umt.intUserToId = u.intUserId AND((umt.intCreatorId = '1' AND umt.blnReplied)OR umt.intUserToId = '1') AND blnInboxHide =假
ORDER BY dtmLastSent DESC LIMIT 0,10`
基本上,我需要選擇發送給用戶「intUserToId」的所有消息,這是我或由我發送並已答覆。
該查詢需要0.85s運行,這太慢了。
任何線索我如何解決這個問題?
在此先感謝。
阿明
相同的確切速度......問題是OR。 所有必要的列都被索引... OR正在給出問題。 我只是想到了一些東西,與用戶的參與和主題做一個交叉引用表:) ..可能工作 – Armin 2010-09-03 05:29:30