没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本文实例讲述了mysql使用GROUP BY分组实现取前N条记录的方法。分享给大家供大家参考,具体如下: MySQL中GROUP BY分组取前N条记录实现 mysql分组,取记录 GROUP BY之后如何取每组的前两位下面我来讲述mysql中GROUP BY分组取前N条记录实现方法。 这是测试表(也不知道怎么想的,当时表名直接敲了个aa,汗~~~~): 结果: 方法一: 代码如下:SELECT a.id,a.SName,a.ClsNo,a.Score FROM aa a LEFT JOIN aa b ON a.ClsNo=b.ClsNo AND a.Score<b.Score group
资源推荐
资源详情
资源评论
mysql使用使用GROUP BY分组实现取前分组实现取前N条记录的方法条记录的方法
本文实例讲述了mysql使用GROUP BY分组实现取前N条记录的方法。分享给大家供大家参考,具体如下:
MySQL中GROUP BY分组取前N条记录实现
mysql分组,取记录
GROUP BY之后如何取每组的前两位下面我来讲述mysql中GROUP BY分组取前N条记录实现方法。
这是测试表(也不知道怎么想的,当时表名直接敲了个aa,汗~~~~):
结果:
方法一:方法一:
代码如下:SELECT a.id,a.SName,a.ClsNo,a.Score FROM aa a LEFT JOIN aa b ON a.ClsNo=b.ClsNo AND a.Score<b.Score
group by a.id,a.SName,a.ClsNo,a.Score having count(b.id)<2 ORDER BY a.ClsNo,a.Score desc;
拆开分析:
<!–[if !supportLists]–>1、 <!–[endif]–>LEFT JOIN aa b ON a.ClsNo=b.ClsNo AND a.Score<b.Score
同一个班级(每个班级四个人),分数比当前学生高的记录,那就意味这成绩垫底的学生,将会产生三条记录
<!–[if !supportLists]–>2、 <!–[endif]–>group by a.id,a.SName,a.ClsNo,a.Score having count(b.id)<2
a.id,a.SName,a.ClsNo,a.Score可以代表一个学生(以学生分组),如果count(b.id)<2(成绩超过你的人不能多于2个),那
就只剩第一第二了。
方法二:方法二:
代码如下:SELECT * FROM aa a WHERE 2>(SELECT COUNT(*) FROM aa WHERE ClsNo=a.ClsNo and Score>a.Score)
ORDER BY a.ClsNo,a.Score DESC;
这个我觉得是比较有意思的,取每一条记录,判断同一个班级,大于当前成绩的同学是不是小于2个人。
方法三:方法三:
代码如下:SELECT * FROM aa WHERE id IN (SELECT id FROM aa WHERE ClsNo=a.ClsNo ORDER BY Score DESC
LIMIT 2) ORDER BY a.ClsNo,a.Score DESC;
这种方式进过测试不通过,ERROR 1235 (42000): This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME
subquery’ ,不能在这几个子查询中使用limit。
更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、
资源评论
weixin_38689857
- 粉丝: 8
- 资源: 888
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 中优A2双门门禁机使用说明 中优A2双门门禁机是一款功能丰富的门禁设备,支持多种开门方式 以下是其使用说明: 开门方式
- 门禁机是一款功能 中优双频刷卡丰富、适用于楼宇公寓的门禁设备 以下是关于中优双频刷卡门禁机的详细
- 深度学习|模型推理:端到端任务处理
- 深度学习|感知机:神经网络之始
- 深度学习|引介:未来已来
- 门禁自动开门系统提高了安全性和便利性,但也存在成本等考量 优点: 安全性高:有效防止非法入侵,提升小区或机构的整体安
- 实证分析中国工业经济-数实产业技术融合与企业全要素生产率(2008-2022).txt
- sshfs-win-3.7.21011-x64.msi
- 西门子200SMART 5轴伺服控制程序 威纶屏 ST30+ST20 2个V90伺服+3个步进电机 该程序是实际项目中的
- 飞剪程序 追剪程序plc程序伺服程序 汇川系列 带注释 触摸屏程序 飞剪程序、追剪程序plc程序伺服程序 几年前的飞剪追剪程序
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功