首页 > 数据库技术 > 详细

MySQL中查询获取每个班级成绩前三名的学生信息

时间:2015-09-11 14:21:56      阅读:717      评论:0      收藏:0      [点我收藏+]

今天有同事说到了怎么MySQL中查询获取每个班级成绩前三名的学生信息,在网上查了查,然后写出代码,很快就OK了。

 

CREATE TABLE t_testscore(    pk_id INT PRIMARY KEY,    c_name VARCHAR(50) ,    c_score INT,    c_class INT )DEFAULT CHARSET=utf8;

INSERT INTO t_testscore VALUES (1, ‘张三6‘, 66, 1),(2, ‘张三5‘, 65, 1),(3, ‘张三4‘, 64, 1), (4, ‘张三3‘, 63, 1),(5, ‘张三2‘, 62, 1);

INSERT INTO t_testscore VALUES (11, ‘李四6‘, 76, 2),(12, ‘李四5‘, 75, 2),(13, ‘李四4‘, 74, 2), (14, ‘李四3‘, 73, 2),(15, ‘李四2‘, 72, 2);

SELECT * FROM t_testscore t  

  WHERE EXISTS(SELECT COUNT(*) FROM t_testscore ts  WHERE ts.c_score>=t.c_score  GROUP BY ts.c_class  HAVING COUNT(*)<=3)  

    ORDER BY c_class,c_score DESC;

MySQL中查询获取每个班级成绩前三名的学生信息

原文:http://www.cnblogs.com/scczxxl/p/4800584.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!