首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >选择从某个数字开始的连续行数

选择从某个数字开始的连续行数
EN

Database Administration用户
提问于 2012-11-07 14:36:23
回答 1查看 970关注 0票数 3

我需要的是从一个表中选择100个连续行,从某个定义的点开始,而不对数据进行排序。

据我所观察,插入到表中的数据不按顺序存储,而是由相同的SELECT语句以相同的顺序检索。

我可以使用100个随机行,但是随机行并不有用,因为我总是需要从数据库中检索相同的数据,以便比较我正在开发的算法的结果。

我不想按任何字段对数据进行排序,因为否则我将偏袒所选的数据。

sql语句应该类似于:

代码语言:javascript
代码运行次数:0
运行
复制
SELECT field1, field2 FROM table1 WHERE row_number > 70000 LIMIT 100;

或者更好(因为我认为LIMIT并不阻止数据库输出行号70000以上的每条记录):

代码语言:javascript
代码运行次数:0
运行
复制
SELECT field1, field2 FROM table1 WHERE row_number > 70000 AND row_number <= 70100;

我应该使用什么SELECT语句?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2012-11-07 14:59:04

你可以尝试这样的方法

代码语言:javascript
代码运行次数:0
运行
复制
SELECT field1, field2 
FROM table1 
ORDER BY ctid
OFFSET x
LIMIT 100
;

正如我所评论的,如果没有排序,您就永远无法确定您得到的是相同的100行。这样,如果没有更新或删除相同的行,它们将按一定的顺序得到。

票数 4
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/28322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档