SQL选择一定数量的行

时间:2012-08-28 15:04:26

标签: sql range rows database-agnostic

您好我需要一个SQL查询语句,让我的行'开始'到'完成'。

例如:

包含许多项目的网站,其中第1页仅选择项目1-10,第2页有11-20,依此类推。

我知道如何使用Microsoft SQL Server和MySQL执行此操作,但我需要一个独立于平台的实现。 :/

我有ID的增量行,但是当我通过

选择时,删除中间会使结果混乱
WHERE ID > number AND ID < othernumber

当然

如果不将整个数据库提取到ResultSet,这是否可行?

2 个答案:

答案 0 :(得分:1)

我认为您最安全的选择是使用BETWEEN运算符。我相信它适用于Oracle / MySQL / MSSQL。

WHERE ID BETWEEN number AND othernumber

答案 1 :(得分:0)

关于你的评论“我只考虑前100个ID消失的情况我将不得不进一步检查,直到有东西要提取”,你可能想要考虑 NOT 实际上删除来自你的数据库的东西,但是在你的表中添加一个像“active”这样的标志或类似的东西,这样你就可以避免像你现在想要避免的情况。另一种方法是你现在所处的位置,必须在过滤器中找到最大和最小行