首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从mysql表中逐条选择记录-不断写入更多记录的动态表

问从mysql表中逐条选择记录-不断写入更多记录的动态表
EN

Stack Overflow用户
提问于 2012-06-16 04:28:23
回答 1查看 234关注 0票数 1

我想从MySQL表中一次选择一条记录。我在上面找到了类似的帖子,所以这里-

How to select records one by one without repeating

但是,在我的例子中,表的大小不是固定的,数据会不断地添加到表中,并且我希望从该表中一次选择一条记录。此外,我还使用python连接到mysql数据库并对每条记录进行处理。有什么建议吗?

附注:表的大小非常大,因此每次我都无法计算表中的记录数量

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-16 05:02:37

此功能并未内置到SQL中。

如果表上有一个密集的、递增的索引列,那么只需执行以下操作:

代码语言:javascript
复制
i = 0
while True:
    # your usual select here, but with "and MyIndexColumn = %d' % (i,)

对于某些数据库,无论您是否愿意,都有这样一个内置的列,通常称为"RowID“或"Row ID";如果没有,您总是可以显式地添加这样一个列。

如果可以跳过这些值(通常它们可以跳过,例如,如果没有其他原因,只是因为某人可以从中间删除一行),那么当然,您必须能够处理返回0行的select。

唯一的问题是没有办法知道你什么时候完成了。但这是你最初的问题陈述中固有的:数据是不断添加的,而你事先不知道它的大小,所以你怎么能知道呢?如果您需要知道生成器何时完成,它必须以某种方式(可能通过数据库中的另一个表)为您提供它创建的最高行If。

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

https://stackoverflow.com/questions/11057759

复制
相关文章

相似问题

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