博客
关于我
查询每班前3的学生
阅读量:649 次
发布时间:2019-03-15

本文共 235 字,大约阅读时间需要 1 分钟。

SELECT    *FROM    `student` as swhere    (select count(1)+1 from student where cid=s.cid and s.score
<=3

思路是查询当前学生,比子查询(所有学生)中分数低的不超过三个,其中自己是相等,子查询结果为3的是第3,用s.score<score而不是<=是避免并列不显示(即这样可以把两个并列第三的都显示出来),相同班级用两个学生记录对比,而不是分组。

转载地址:http://znkmz.baihongyu.com/

你可能感兴趣的文章
Mysql 纵表转换为横表
查看>>
mysql 编译安装 window篇
查看>>
mysql 网络目录_联机目录数据库
查看>>
MySQL 聚簇索引&&二级索引&&辅助索引
查看>>
Mysql 脏页 脏读 脏数据
查看>>
mysql 自增id和UUID做主键性能分析,及最优方案
查看>>
Mysql 自定义函数
查看>>
mysql 行转列 列转行
查看>>
Mysql 表分区
查看>>
mysql 表的操作
查看>>
mysql 视图,视图更新删除
查看>>
MySQL 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>
mysql 转义字符用法_MySql 转义字符的使用说明
查看>>