如何在python flask app中将数据从postgresql渲染到csv?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在python flask app中将数据从postgresql渲染到csv?相关的知识,希望对你有一定的参考价值。
我是python的新手,并试图在其中编写代码。我试图运行一个选择查询,但我无法将数据呈现给csv文件?
这是psql查询:
# copy (
# SELECT
# sr.imei,
# sensors.label,sr.created_at,
# sr.received_at,
# sr.type_id,
#
但如何在python中编写它以将其呈现为csv文件?
感谢你,Vikas
答案
sql = "COPY (SELECT * FROM sensor_readings WHERE reading=blahblahblah) TO STDOUT WITH CSV DELIMITER ';'"
with open("/tmp/sensor_readings.csv", "w") as file:
cur.copy_expert(sql, file)
我认为您只需要更改sql供您使用,它应该可以工作。
另一答案
通过psycopg2
安装pip install psycopg2
比你需要这样的东西
import csv
import psycopg2
query = """
SELECT
sr.imei,
sensors.label,sr.created_at,
sr.received_at,
sr.type_id,
sr.data FROM sensor_readings as sr LEFT JOIN sensors on sr.imei = sensors.imei
WHERE sr.imei not like 'test%' AND sr.created_at > '2019-02-01'
ORDER BY sr.received_at desc
"""
conn = psycopg2.connect(database="routing_template", user="postgres", host="localhost", password="xxxx")
cur = conn.cursor()
cur.execute(query)
with open('result.csv', 'w') as f:
writer = csv.writer(f, delimiter=',')
for row in cur.fetchall():
writer.writerow(row)
conn.close()
以上是关于如何在python flask app中将数据从postgresql渲染到csv?的主要内容,如果未能解决你的问题,请参考以下文章
如何在模板中将数据从 Flask 传递到 JavaScript?
在渲染模板中将变量从python(flask)传递给HTML?