pymysql批量检索数据

我正在使用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模块中的方法来执行此操作...谢谢


Cats萌萌
浏览 208回答 1
1回答

温温酱

我这样做的方式是这样的:query = "SELECT * FROM my_table"c = db.cursor(pymysql.cursors.DictCursor)c.execute(query)limit = 5000not_done = Truewhile not_done:    data = []    for _ in range(limit):        try:            data += [c.fetchone()]        except:            not_done = False            break    do_something_with_data()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python