【发布时间】:2021-02-03 21:05:21
【问题描述】:
所以我有 2 个表,用户和消息
用户表
uid,用户名
消息表
mid、senderid、receiverid、消息、时间戳
我目前的查询是检索每个聊天对话的 uid、用户名和最后一个时间戳
SELECT DISTINCT
IF (messages.senderid = '5e9b95786a71f8.25790415', messages.receiverid, messages.senderid) as uid,
(SELECT username FROM users WHERE uid = IF (messages.senderid = '5e9b95786a71f8.25790415', messages.receiverid, messages.senderid)) as username,
MAX(messages.timestamp) as last_timestamp
FROM messages JOIN users ON users.uid = messages.senderid WHERE messages.senderid = '5e9b95786a71f8.25790415' OR messages.receiverid = '5e9b95786a71f8.25790415'
GROUP BY 1,2
下面的输出
uid |用户名 |最后一个时间戳
1 |开发商 | 1601826378
2 | BetaTester | 1601826301
我需要添加到这个查询的是消息字段,它基于我在输出中的 last_timestamp。
如何更新查询以包含额外的消息字段?
【问题讨论】: