我正在开发一个Flask应用程序,该应用程序映射在Postgresql中构建的现有数据模型。 我已经使用automap映射了表,可以正确查询对象:
Base = automap_base()
Base.prepare(db.engine, reflect=False)
Object1 = Base.classes.table1
我现在正在查询table1,需要检索一个类似timeseries的列表。对象具有一个数字值和一个时间戳postgresql格式的datetime
当我运行查询并尝试使用jsonify将结果导出为json时
query = session.query(Object1.value, Object1.createtime).order_by(Object1.createtime.desc())
return jsonify(str(query.all()))
我得到了这个结果:
"[(5543157, datetime.datetime(2021, 4, 3, 7, 29, 53)), (5543156, datetime.datetime(2021, 4, 3, 7, 29, 37))]"
如何取回unix时间戳而不是datetime.datetime格式?我希望避免通过循环来转换每个元素,因为查询可能检索到超过1M个元素
不要直接选择列,而是选择产生所需值的表达式。在本例中,可以使用^{} 生成Unix时间戳
SQLAlchemy的这一面(我自己有一段时间没有使用过)是由this answer提供的
相关问题 更多 >
编程相关推荐