gpt4 book ai didi

mysql - 按mysql中字段中的最大记录数排序

转载 作者:行者123 更新时间:2023-11-29 00:07:05 26 4
gpt4 key购买 nike

我想从 MySQL 数据库中订购一个表的内容,如下所示。

name,h1,h2
a,f1,3
a,g3,5
a,h3,4
b,g3,4
c,h5,2
c,j12,6

我想获取名称列中每个元素的长度,即“a”的长度为 3(因为它有三行数据与之关联)并获取前 2 个元素的数据 (这里它包括 3 行用于 a 和 2 行用于 c,因为它们按降序排列的长度最长)。所以所需的输出如下所示

name,h1,h2
a,f1,3
a,g3,5
a,h3,4
c,h5,2
c,j12,6

如何在 MySQL 中实现这一点?

最佳答案

加入对前两个记录的计数应该会得出结果。

select
t.*
from
table1 t
inner join (select
name,
count(*) as cnt
from table1
group by name
order by count(*) desc
limit 2) as c on t.name = c.name
order by c.cnt desc

这是一个 fiddle

关于mysql - 按mysql中字段中的最大记录数排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27023453/

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