视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Mysql数据分组取某字段值所有最大的记录行_MySQL
2020-11-09 19:34:24 责编:小采
文档


需求:

表中同一个uid(用户)拥有多条游戏等级记录,现需要取所有用户最高等级(level)的那一条数据,且时间(time)越早排越前。这是典型的排名表

+------+-------+--------------+---------------------+| uid | level | role | time |+------+-------+--------------+---------------------+| 7 | 1 | 摇滚圣魔 | 2014-06-12 15:01:05 || 1134 | 4 | 唯我独尊 | 2014-06-12 15:02:38 || 1134 | 4 | 唯我独尊 | 2014-06-12 15:02:39 || 7 | 3 | 摇滚圣魔 | 2014-06-12 15:02:59 || 5 | 3 | 韵儿铃♦ | 2014-06-12 15:04:09 || 7363 | 6 | 诗荷冰月 | 2014-06-12 15:04:23 || 6684 | 4 | つ道远虚空つ | 2014-06-12 15:05:13 || 7 | 16 | 摇滚圣魔 | 2014-06-12 15:05:46 || 1 | 2 | 斗土豪 | 2014-06-12 15:05:48 || 7 | 26 | 摇滚圣魔 | 2014-06-12 15:08:36 || 6684 | 8 | つ道远虚空つ | 2014-06-12 15:08:45 || 5 | 12 | 韵儿铃♦ | 2014-06-12 15:09:47 || 6834 | 1 | 无敌追翼 | 2014-06-12 15:10:56 || 5 | 16 | 韵儿铃♦ | 2014-06-12 15:11:18 || 8719 | 1 | 君望赤 | 2014-06-12 15:11:48 || 6274 | 36 | 五月独孤 | 2014-06-12 15:12:22 || 8724 | 26 | 童童 | 2014-06-12 15:12:31 || 1134 | 32 | 唯我独尊 | 2014-06-12 15:12:51 || 7 | 26 | 摇滚圣魔 | 2014-06-12 15:13:38 || 5 | 25 | 韵儿铃♦ | 2014-06-12 15:14:48 || 7757 | 3 | つ清灵旋つ | 2014-06-12 15:16:50 || 7 | 26 | 摇滚圣魔 | 2014-06-12 15:17:26 || 5 | 28 | 韵儿铃♦ | 2014-06-12 15:18:08 || 7757 | 23 | つ清灵旋つ | 2014-06-12 15:19:29 || 6274 | 43 | 五月独孤 | 2014-06-12 15:19:54 || 8724 | 30 | 童童 | 2014-06-12 15:20:39 || 7757 | 26 | つ清灵旋つ | 2014-06-12 15:20:58 || 8707 | 36 | 就是干 | 2014-06-12 15:22:28 || 7757 | 29 | つ清灵旋つ | 2014-06-12 15:23:05 || 7757 | 32 | つ清灵旋つ | 2014-06-12 15:24:57 || 8726 | 10 | 连曦 | 2014-06-12 15:26:01 || 7363 | 34 | 诗荷冰月 | 2014-06-12 15:26:58 || 7 | 26 | 摇滚圣魔 | 2014-06-12 15:27:33 || 5 | 37 | 韵儿铃♦ | 2014-06-12 15:27:37 || 8347 | 1 | 无敌 | 2014-06-12 15:28:09 || 6274 | 47 | 五月独孤 | 2014-06-12 15:28:13 || 1 | 32 | 斗土豪 | 2014-06-12 15:29:18 || 1134 | 46 | 唯我独尊 | 2014-06-12 15:30:52 || 7757 | 41 | つ清灵旋つ | 2014-06-12 15:30:56 || 9 | 34 | 饭饭饭饭の | 2014-06-12 15:31:03 || 6274 | 48 | 五月独孤 | 2014-06-12 15:31:18 || 8724 | 41 | 童童 | 2014-06-12 15:32:30 || 7757 | 42 | つ清灵旋つ | 2014-06-12 15:34:24 || 1134 | 48 | 唯我独尊 | 2014-06-12 15:34:56 || 1100 | 2 | 圣魔霄 | 2014-06-12 15:35:54 || 1008 | 21 | ∵嘟嘟冰儿∵ | 2014-06-12 15:36:10 || 7757 | 45 | つ清灵旋つ | 2014-06-12 15:40:49 || 3088 | 4 | 战魂凌空 | 2014-06-12 15:41:38 || 5 | 41 | 韵儿铃♦ | 2014-06-12 15:41:56 || 7757 | 46 | つ清灵旋つ | 2014-06-12 15:43:24 |

实现过程:

1.首先对该数据进行2次排序,uid 排序以及等级的降序排序

2.对排序后的结果用uid进行分组,分组后等级降序排序,时间升序排序

实现SQL:

select * from (select a.uid,a.level,a.role,a.time from 数据表 a where order BY a.uid desc,a.level desc) as 别名 group by user_uid order by level desc,time asc limit 30;

下载本文
显示全文
专题