我想知道在Ingres中是否有一种方法可以选择select查询中的后续一批行。例如,可以使用select first 500 from tablename选择前500行,但是如果我想选择501到1000行,是否有任何方法可以做到这一点?
您可以按以下方式使用OFFSET子句:
SELECT col_name
FROM table
WHERE col_name = 'value'
OFFSET m FETCH FIRST n ROWS ONLY
例如。SELECT *
FROM table
OFFSET 501 FETCH FIRST 500 ROWS ONLY
你可以使用:
SELECT FIRST 10 * FROM table
或者
SELECT FIRST 10 field1, field2 FROM table
我在Ingres 9.2中进行了测试,它可以正常工作。
Select top 1000 * from table;
在10.0版本中完美运行
你可以尝试使用rownum
变量来限制行数:
SELECT * from TABLE
WHERE rownum <=500
我还没有在你的问题上测试过,但是应该可以正常工作:
SELECT * from TABLE
WHERE rownum >500
AND rownum <= 1000