我的表中的值。
现在,预期的结果 例如,如果我选择在groupcode = 1中选择2个最高分,我希望看到以下内容
我的查询
SELECT marks FROM person WHERE groupCode = 1 ORDER BY marks DESC LIMIT 2;
仅获取带有标记69和30的Quigsley Kos groupCode
1的结果;
有人请帮忙。
答案 0 :(得分:0)
SELECT `sn`, `admno`, `studname`, `fclass`, `groupcode`, `subjectcode`, `marks`
FROM
(
SELECT `sn`, `admno`, `studname`, `fclass`, `groupcode`, `subjectcode`, `marks`,
CASE WHEN @group = T.groupcode AND @studname = T.studname
THEN @row:=@row+1
ELSE
@row:=1
END AS rownum,
@group:=T.groupcode AS Vargroupcode,
@studName:= T.studname
FROM TableA T,(SELECT @group:=null,@row:=0) R
ORDER BY groupcode,studname
) T1
WHERE rownum<=2
<强>演示强>