【发布时间】:2021-03-09 04:39:30
【问题描述】:
我的表看起来像这样(我正在使用 MySQL):
id NewID SenderID ReceiverID msg msgType TimeStamp
1 5 9 8 dfdf 1 7-03-2021 6:10 AM
2 4 9 8 dfdf 1 7-03-2021 6:11 AM
3 3 9 8 dfdf 1 7-03-2021 6:13 AM
4 5 9 8 fgdf 1 7-03-2021 6:16 AM
我的目标是将 id (_maxid) 最高记录放在表的顶部,如果存在重复记录,则删除它。
我正在运行以下查询,
SELECT MAX(id) _maxid , NewID
FROM tb_detail
GROUP BY id order by id desc
它会返回这个-
_maxid NewID
4 5
3 3
2 4
1 5
预期结果:
_maxid NewID
4 5
3 3
2 4
有什么想法吗?谢谢。
【问题讨论】:
-
如果你想要每个
newID的最大值,为什么要按id分组? -
这在整个场景中带来了另一个问题。以非常奇怪的方式改变顺序。 _maxid NewID 3 3 2 4 4 5
-
你用的mysql是什么版本的?
-
order by 1 desc。尝试先阅读the documentation。 -
另外,如果你使用的是 MySQL,那么请不要添加其他 DBMS 的标签,因为它们不相关