从会话中选择最后一条消息

时间:2016-04-03 22:57:52

标签: mysql sql pdo

我试图制作一个facebook风格的私信。

我有四个表,用户,会话,对话回复和conversation_user。

对话可以超过2个参与者,conversation_user用作数据透视表。

会话回复表包含user_id和会话ID。

如何通过对话选择最后5个会话并显示会话的最后一条消息?

我缺少更好的数据库架构吗?

http://sqlfiddle.com/#!9/6908b2

1 个答案:

答案 0 :(得分:0)

首先,您应该在对话中添加一个日期,然后选择限制5,来自conversations_reply的正文,其中用户ID等于您想要的那个。

SELECT Body FROM conversations_reply
WHERE user_id = @user_id
ORDER BY Converstaion_Date
LIMIT 5;