1

我有一个存储分数的表“结果”。它按“测试”日期排序。现在我需要获取在测试中获得第 1、第 2 和第 3 名的用户的详细信息。

我想要获得第一分,我可以使用:

select *
from RESULTS
where SCORE=max(SCORE)

但是第二和第三呢?也有可能在一个查询中将它们三个放在一起。

4

1 回答 1

7

你可以试试(MySql)

SELECT * FROM results
ORDER BY score DESC
LIMIT 3

或 (MS-SQL)

SELECT TOP 3 * FROM results
ORDER BY score DESC

或(甲骨文)

SELECT * FROM
    (SELECT * FROM results
     ORDER BY score DESC) t
WHERE ROWNUM < 4
于 2012-04-11T08:47:30.190 回答