按没有行标识符的块遍历DB2表

时间:2019-05-24 08:05:45

标签: database db2 spring-jdbc

我们必须在Spring Framework中创建一个进程,该进程按块读取DB2表。 但是,该表没有包含可用作游标的唯一标识符的列,因此在第二个块中,我们不必从该点开始读取。 该表包含以下列:

BOOK_ID  SOLD_AT  QUANTITY

第一个是书籍模型的外键,第二个是书籍的销售日期,第三个是书籍的销售数量。

是否可以通过db2的rowId进行SELECT排序?不幸的是,这是旧代码,因此我们无法为db2创建额外的列。

谢谢。

1 个答案:

答案 0 :(得分:1)

尝试一下:

select hex(rowid) rowid, t.name, t.creator
from (
select t.*, rid_bit(t) rowid 
from sysibm.systables t
) t 
order by rowid
fetch first 10 row only;

rid_bittable-designator)的值可能会随着物理行的移动而改变(例如,重组,删除旧行,将新行插入相同的物理位置,等等)< / p>