gpt4 book ai didi

python - 将 Postgres 表复制到 CSV 输出,使用 python 在 n 个文件上分页

转载 作者:行者123 更新时间:2023-11-29 13:12:19 25 4
gpt4 key购买 nike

使用 psycopg2 将 Postgres 数据导出到 CSV 文件(不是一次全部,一次 100 000 行)。目前正在使用 LIMIT OFFSET 但显然这在 100M 行数据库上很慢。有没有更快的方法来跟踪每次迭代的偏移量?


对于我在 (0, 100000000, 100000) 中:
“复制
(SELECT * from users LIMIT %s OFFSET %s)
TO STDOUT DELIMITER ',' CSV HEADER;"
% (100000, i)

代码是否循环运行,递增i

最佳答案

让我向您推荐一种不同的方法。

复制整个表格,然后拆分。像这样的东西:

COPY users TO STDOUT DELIMITER ',' CSV HEADER

最后,从 bash 执行拆分命令(顺便说一句,您可以在 python 脚本中调用它):

split -l 100000 --numeric-suffixes users.csv users_chunks_

它将生成几个名为 users_chunks_1、users_chunks_2 等的文件。

关于python - 将 Postgres 表复制到 CSV 输出,使用 python 在 n 个文件上分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53339223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com