【发布时间】:2018-06-19 09:55:46
【问题描述】:
我有一个简单的聊天应用程序,我需要在其中获取两个用户之间每次对话的最后一条消息(user1 是你)
这是我的桌子
| id | sender_id | receiver_id | message | timestamp |
这是我的查询,但它返回两个用户的最后一条消息,而不是两个用户之间的最后一条消息
SELECT *
FROM (SELECT DISTINCT * FROM chat WHERE (sender_id='user_id' OR receiver_id='user_id')
ORDER BY timestamp DESC) as m GROUP BY `sender_id`
所以我只需要两个用户之间的最后一条消息而不是两条消息
编辑
我在该表中存储了多个对话,因此我希望它从用户所在的所有对话中提取最后一条消息。 因此,如果我与 3 个人聊天,它应该返回 3 条消息,每条消息都是该对话的最后一条
【问题讨论】:
-
请在您的问题中包含示例数据、表格定义和预期输出
标签: mysql