如何能帮助我,我在数据库中有一个表,该表的列名为“ recioient_id” 其行的值被重复多次,如何在保持顺序降序并显示最后一行的同时防止重复行 我已经尝试了很多却找不到 我做了这个查询,擅长防止重复并且没有显示最后一行 查询哪个:
SELECT *
FROM `messages`
WHERE `sender_id` = 1
GROUP BY `recioient_id` DESC
HAVING COUNT(*) >= 1
这是示例表
我希望翻译成功并希望能为您提供帮助
答案 0 :(得分:0)
如果您希望每recioient_id
行,请使用过滤。我会推荐一个相关的子查询:
SELECT m.*
FROM messages m
WHERE m.sender_id = 1 AND
m.messages_id = (SELECT MAX(m2.messages_id)
FROM messages m2
WHERE m2.sender_id = m.sender_id AND
m2.recioient_id = m.recioient_id
)
ORDER BY m.recioient_id;