如何从行范围内的 HSQL 中检索数据?
How to retrieve data from HSQL within a row range?
我曾与 oracle 合作,其中 select 查询特定行范围内的数据:
SELECT * from TABLE WHERE rownum>0 AND rownum<=10
在 HSQL 中对应的查询是什么?
HSQLDB 支持 LIMIT
和 OFFSET
关键字
select *
from some_table
limit 10
offset 2;
请注意,如果没有 order by
子句,limit
和 offset
就没有意义(对于 Oracle 也是如此)。
HSQLDB 也支持 ANSI SQL 标准 fetch first x rows
但这需要使用 order by
select *
from some_table
order by some_column
offset 2 rows
fetch first 10 rows only;
Oracle 从 12.1 开始也支持以上内容
详见手册
http://hsqldb.org/doc/2.0/guide/dataaccess-chapt.html#dac_slicing
我曾与 oracle 合作,其中 select 查询特定行范围内的数据:
SELECT * from TABLE WHERE rownum>0 AND rownum<=10
在 HSQL 中对应的查询是什么?
HSQLDB 支持 LIMIT
和 OFFSET
关键字
select *
from some_table
limit 10
offset 2;
请注意,如果没有 order by
子句,limit
和 offset
就没有意义(对于 Oracle 也是如此)。
HSQLDB 也支持 ANSI SQL 标准 fetch first x rows
但这需要使用 order by
select *
from some_table
order by some_column
offset 2 rows
fetch first 10 rows only;
Oracle 从 12.1 开始也支持以上内容
详见手册
http://hsqldb.org/doc/2.0/guide/dataaccess-chapt.html#dac_slicing