为了账号安全,请及时绑定邮箱和手机立即绑定

pymysql批量检索数据

pymysql批量检索数据

Cats萌萌 2021-05-30 19:46:59
我正在使用pymysql与sql db进行交互,这是代码:    query = "SELECT * FROM my_table"    c = db.cursor(pymysql.cursors.DictCursor)    c.execute(query)    c.fetchall()现在我正在为不多的3000个肠的数据库执行此操作,我计划在具有1500万个肠的数据库中使用此数据库,并且我希望将数据作为5000个肠的批次进行循环处理我想知道是否需要在查询中使用LIMIT和OFFSET来执行此操作,还是可以仅使用pymysql模块中的方法来执行此操作...谢谢
查看完整描述

1 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

我这样做的方式是这样的:


query = "SELECT * FROM my_table"

c = db.cursor(pymysql.cursors.DictCursor)

c.execute(query)


limit = 5000

not_done = True


while not_done:

    data = []

    for _ in range(limit):

        try:

            data += [c.fetchone()]

        except:

            not_done = False

            break

    do_something_with_data()


查看完整回答
反对 回复 2021-06-01
  • 1 回答
  • 0 关注
  • 206 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信