gpt4 book ai didi

mysql - 排序 mysql 结果。按 col1 排序,按 col2 分组

转载 作者:行者123 更新时间:2023-11-29 01:59:24 32 4
gpt4 key购买 nike

我有一个包含 2 列“id”和“name”的表。 id 是常规的自动增量索引,name 只是 varchar。

id  name
1 john
2 mary
3 pop
4 mary
5 john
6 michael
7 john
8 will

我想这样排序搜索结果

8  will
7 john
5 john
1 john
6 michael
4 mary
2 mary
3 pop

Id 是 DESC,但所有重复的名称都组合在一起。没关系,如果ASC更容易实现。如有必要,我可以在 PHP 中反转结果。

常规 ORDER BY name,id DESC 首先对所有名称进行排序,然后对 ID 进行排序。那不是我想要的。我对名字的字母顺序不感兴趣。

我想要按 DESC 顺序排列的 id,如果有的话按重复名称分组。

附注很抱歉这是一个重复的问题。

最佳答案

如果我没理解错的话,您需要一个临时表。

SELECT TableName.id, TableName.Name FROM TableName
INNER JOIN
(
SELECT Name, max(id) as maxid FROM TableName GROUP BY Name
) as tmp on tmp.Name = TableName.Name
ORDER BY maxid DESC, id DESC

关于mysql - 排序 mysql 结果。按 col1 排序,按 col2 分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19094186/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com