我正在使用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