如果我有一个包含以下列的表,
Marks
60
80
70
90
95
90
70
我需要选择前4位带有标记的所有行,即。在这种情况下,> = 70并且应该返回6行。
我不知道怎么做,有人可以帮忙吗?感谢。
答案 0 :(得分:4)
SELECT Marks FROM (
SELECT Marks, DENSE_RANK() OVER (ORDER BY Marks DESC) AS MarksRank
FROM yourtable
) WHERE MarksRank <= 4