你能帮我吗?我在数据库中有一个表,其中有一列名为“recioient_id” 其行的值重复多次如何在保持顺序降序并显示最后一行的同时防止重复行 我已经尝试了很多却没有找到 我做了这个查询并且善于防止重复并且没有显示最后一行 查询为:
SELECT *
FROM `messages`
WHERE `sender_id` = 1
GROUP BY `recioient_id` DESC
HAVING COUNT(*) >= 1
这是一个示例表
希望翻译成功,希望能有所帮助
最佳答案
如果您希望每个 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;
关于mysql - 如何防止 MySQL 数据库中出现重复的列行,同时保持顺序不变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53440139/