我有一张没有 PK 列的表。我不应该改变这一点。还有一个数字列可用于对行进行排序。如何在不使用任何函数(即与数据库无关的查询)的情况下选择前 1 行或前 n 行?
我查看了这个查询,但它不适用于我的情况 - 是否有一个与数据库无关的 SQL 查询来获取前 N 行?
我有一张没有 PK 列的表。我不应该改变这一点。还有一个数字列可用于对行进行排序。如何在不使用任何函数(即与数据库无关的查询)的情况下选择前 1 行或前 n 行?
我查看了这个查询,但它不适用于我的情况 - 是否有一个与数据库无关的 SQL 查询来获取前 N 行?
根据您链接到的线程,没有太多与数据库无关的解决方案:
select * from table order by col fetch first 10 rows only
select first 10 * from table order by col
select top 10 * from table order by col
select * from table order by col limit 10
select * from (select * from table order by col) where rownum <= 10