[英]Order by highest number of records in a field in mysql
我想從如下所示的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個元素的數據 (此處包括a的3行和c的2行,因為它們具有最大長度的降序排列。 因此所需的輸出如下所示
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
這是一個小提琴
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.