如何获得postgresql的前10个值?
我有一个简单的问题:
我有一个postgresql数据库: Scores(score integer)
。
我怎样才能得到最快的10分?
更新:我将多次执行此查询,并瞄准最快的解决scheme。
为此,您可以使用限制
select * from scores order by score desc limit 10
如果performance很重要(什么时候不是;-)则在分数上寻找索引。
从版本8.4开始,您也可以先使用标准( SQL:2008 ) fetch first
select * from scores order by score desc fetch first 10 rows only
似乎你正在寻找在DESC
结束顺序与LIMIT子句的ORDER BY
:
SELECT * FROM scores ORDER BY score DESC LIMIT 10
当然SELECT *
会严重影响性能,所以要谨慎使用它。