数据库不可知查询选择前1行还是前n行?

时间:2013-06-12 08:26:14

标签: sql

我有一张没有PK列的表。我不应该改变这一点。还有一个数字列,可用于对行进行排序。如何在不使用任何函数的情况下选择前1行或前n行,即数据库不可知查询?

我查看了这个查询,但它对我的情况不起作用 - Can there be a database-agnostic SQL query to fetch top N rows?

1 个答案:

答案 0 :(得分:1)

根据您链接的线程,没有太多与数据库无关的解决方案:

  • DB2 - select * from table order by col fetch first 10 rows only
  • Informix - select first 10 * from table order by col
  • Microsoft SQL Server和Access - select top 10 * from table order by col
  • MySQL和PostgreSQL - select * from table order by col limit 10
  • Oracle 8i - select * from (select * from table order by col) where rownum <= 10

http://forums.mysql.com/read.php?60,4515,4678