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