麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > MySQL > 正文

mysql獲取分組后每組的最大值實例詳解

2024-07-24 13:13:40
字體:
來源:轉載
供稿:網友

 mysql獲取分組后每組的最大值實例詳解

1. 測試數據庫表如下:

create table test (   `id` int not null auto_increment,   `name` varchar(20) not null default '',   `score` int not null default 0,   primary key(`id`) )engine=InnoDB CHARSET=UTF8; 

2. 插入如下數據:

mysql> select * from test; +----+----------+-------+ | id | name   | score | +----+----------+-------+ | 1 | jason  |   1 | | 2 | jason  |   2 | | 3 | jason  |   3 | | 4 | linjie  |   1 | | 5 | linjie  |   2 | | 6 | linjie  |   3 | | 7 | xiaodeng |   1 | | 8 | xiaodeng |   2 | | 9 | xiaodeng |   3 | | 10 | hust   |   2 | | 11 | hust   |   3 | | 12 | hust   |   1 | | 13 | haha   |   1 | | 14 | haha   |   2 | | 15 | dengzi  |   3 | | 16 | dengzi  |   4 | | 17 | dengzi  |   5 | | 18 | shazi  |   3 | | 19 | shazi  |   4 | | 20 | shazi  |   2 | +----+----------+-------+ 

3. 下面是重點,目的是要按照name分組,然后分組后,獲取每組中score分數最多的,sql如下

select a.* from test a inner join (select name,max(score) score from test group by name)b on a.name=b.name and a.score=b.score order by a.name; 

當然,上面的最后的order by a.name可以去掉

4. 測試結果如下:

+----+----------+-------+ | id | name   | score | +----+----------+-------+ | 3 | jason  |   3 | | 6 | linjie  |   3 | | 9 | xiaodeng |   3 | | 11 | hust   |   3 | | 14 | haha   |   2 | | 17 | dengzi  |   5 | | 19 | shazi  |   4 | +----+----------+-------+ 

5. 網上很多方法都是錯誤的,比如如下一些,親測是不行的

select * from (select * from test order by score desc) t group by name order by score desc limit 4; select score,max(score) from test group by name; select * from test where score in (select max(score) from test group by name); select * from test where score in (select substring_index(group_concat(score order by score desc separator ','),',',1) from test group by name);  select * from (select name,score,ROW_NUMBER() over(group by name order by score desc) as rowNum from test) rank where rank.rowNum <=1 order by rank.score desc;  select * from( select StoresNo,[CustomerCaseNo],[PaymentsTime], ROW_NUMBER() over(partition by CustomerCaseNo order by [PaymentsTime] desc) as rowNum from BAL_paymentsSwiftInfo where StoresNo='zq00000034') ranked where ranked.rowNum <= 1 order by ranked.CustomerCaseNo, ranked.PaymentsTime desc  select * from (select * from test order by score desc) as a group by a.name; 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 女教师~淫辱の动漫在线 | 91短视频版高清在线观看免费 | 香蕉视频破解 | 久久国产成人午夜av浪潮 | 国产午夜精品视频免费不卡69堂 | 九色中文字幕 | 久久久久免费精品国产小说色大师 | 综合99| 欧美一级特黄a | 免费观看一区二区三区视频 | 成人做爰s片免费看网站 | 欧产日产国产精品乱噜噜 | 国产无遮挡一区二区三区毛片日本 | 国产精品一区在线免费观看 | 精品久久久久久久久久中出 | 成年人在线视频观看 | 欧美精品黄色 | 亚洲成人午夜精品 | 深夜网站在线观看 | 国产乱一区二区三区视频 | 国产91精品亚洲精品日韩已满 | 久在线播放| 最新中文字幕第一页视频 | 久久性生活免费视频 | 日日摸夜夜添夜夜添牛牛 | 亚洲一区二区三区高清视频 | 黑人操穴| 有兽焉免费动画 | 国产电影精品久久 | 国产午夜精品久久久久 | 久久经典国产视频 | 国产好片无限资源 | 国产成人精品免高潮在线观看 | 亚洲成人免费电影 | 欧美成人高清视频 | 久久亚洲美女视频 | 精品一区二区视频在线观看 | 黑人一级片| 久久久一二三 | 久精品国产 | 久久久久亚洲精品 |