mysql 查询每个班的前十名的成绩 10

前十名是不是要limit10每个班又要groupby一下到底怎么写,不要用group_concat(),结果不符合规范... 前十名是不是要limit 10
每个班又要group by一下
到底怎么写,不要用group_concat(),结果不符合规范
展开
 我来答
fj...d@163.com
2017-04-22 · TA获得超过159个赞
知道答主
回答量:222
采纳率:25%
帮助的人:56.4万
展开全部
答:
试运行段:
select *
from(
SELECT
obj.id,
obj.score,
CASE
WHEN @rowtotal = obj.score THEN
@rownum
WHEN @rowtotal := obj.score THEN
@rownum :=@rownum + 1
WHEN @rowtotal = 0 THEN
@rownum :=@rownum + 1
END AS rownum
FROM
(
SELECT id,name,score
from test -- 表名字
ORDER BY score DESC
)) AS obj,
(SELECT @rownum := 0 ,@rowtotal := NULL) r
) as no2
where rownum < 4
追问
你好,有没有相关系统点的资料,比如储存过程和这方面的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式