我正在使用mysql进行私人消息系统。创建此表:查询私人消息系统
1) users (id, name)
2) messages(id, text, created)
3) user_has_messages(id, user_id, message_id, is_sender)
表user_has_messages存储短信历史,所以有2行(对于“发送者”的用户和为“接收器”的用户。)每1个消息。每条消息2行,因为即使接收者删除了它,发件人也应该看到他的消息。 所以我需要获取具有最后一条消息的具体用户的所有对话框列表。如果你看一下这张图,应该会比较容易:Explanation
问题是我无法为此任务构造正确的查询。也许坏的数据库设计?
又是怎么回事事实上,在对话框中的最后一条消息可以属于“发件人”或“接收器”? – trerums 2011-06-08 12:23:53
好点,我的SQL只处理用户发送的消息。 – 2011-06-08 12:26:33