阅读 173

sqlalchemy 原生sql查询 返回字典形式数据

在原生sql查询的时候,返回一个list,内部是tuple 一般人会选择用下标取其中的数据 这并不优雅

results = db.execute("SELECT * FROM book limit 1")
复制代码

查询结果是一个list, 在这个list中包含着许多 tuple, 他们看似是tuple,实则并不是 而是一个特殊的类型"<class 'sqlalchemy.util._collections.result'>" 这是一个 AbstractKeyedTuple 对象 它拥有一个 keys() 方法,可以取到所有的key 我们可以通过这个方法将查询结果转换为字典

data = [dict(zip(result.keys(), result)) for result in results]
复制代码
文章分类
后端
文章标签