如何将 teradata sql 读入临时文件?目标是在将 sql 查询中的数据摄取到 pandas df 时提高性能。
在https://towardsdatascience.com/optimizing-pandas-read-sql-for-postgres-f31cd7f707ab上,Tristan Crockett 展示了如何为 postgres 完成此操作。
def read_sql_tmpfile(query, db_engine):
with tempfile.TemporaryFile() as tmpfile:
copy_sql = "COPY ({query}) TO STDOUT WITH CSV {head}".format(
query=query, head="HEADER"
)
conn = db_engine.raw_connection()
cur = conn.cursor()
cur.copy_expert(copy_sql, tmpfile)
tmpfile.seek(0)
df = pandas.read_csv(tmpfile)
return df
我不知道如何重写此代码以使其与 teradata 服务器一起使用。