当前位置: 代码迷 >> java >> Java MySQL通过ResultSet向后迭代
  详细解决方案

Java MySQL通过ResultSet向后迭代

热度:67   发布时间:2023-07-31 11:30:15.0

我已经执行了一个查询,该查询返回我想要向后迭代的数据ResultSet 在for循环中,它看起来像这样:

for (int i = MAX; i >=0; i--){
     // do something
}

唯一的问题是我的数据库中没有一个完全顺序的列,而是我有一个唯一的ID,但有时会跳过数字。 那么,使用实际的结果集,我可以采用某种方式while(set.next()) {...}但反过来? 谢谢。

如果你有一个可滚动的结果集,你可以向后遍历结果集。你可以这样做

创建语句时ResultSet.TYPE_SCROLL_INSENSITIVEResultSet.CONCUR_READ_ONLY

然后你可以使用resultset.last()来获取最后一个条目并使用resultset.previous()向后遍历

编辑:如果您希望结果按照您提到的非顺序ID的降序排列,则可以通过order by id desc执行order by id desc降序检索结果集,然后正常遍历结果集

  相关解决方案