Python SQL查询返回元组中的输出,其中{key:value}对中缺少键(列名)
我想以key:value格式从数据库表中检索数据。但通过使用SQL查询,我只得到元组格式的值 这是我的密码:Python SQL查询返回元组中的输出,其中{key:value}对中缺少键(列名),python,Python,我想以key:value格式从数据库表中检索数据。但通过使用SQL查询,我只得到元组格式的值 这是我的密码: query = "SELECT * FROM `stock_" + str( user_id) + "` INNER JOIN product ON stock_" + str( user_id) + ".product_id=product.id WHERE product.categor
query = "SELECT * FROM `stock_" + str(
user_id) + "` INNER JOIN product ON stock_" + str(
user_id) + ".product_id=product.id WHERE product.category=" + category +
" AND product.sub_category =" + sub_category
cursor.execute(query)
records = cursor.fetchall()
print(records)
这是输出:
(11, datetime.datetime(2020, 1, 23, 2, 7, 59),10,500,400,100,20.0)
以及我的预期产出:
{
"id": 11,
"expiry_date": "2020-07-01",
"quantity": 10,
"mrp": 500,
"selling_price": 400,
"discount_prize": 100,
"discount_percent": 20.0
}
您可以使用
cursor.description
获取字段名,然后可以使用列表理解创建包含查询结果的词典列表
这应该会给你一些接近你想要的输出
records=cursor.fetchall()
fields=[字段[0]用于游标中的字段。说明]
数据=[记录中记录的dict(zip(字段,记录))]
您可以使用cursor.description
获取字段名,然后可以使用列表理解创建包含查询结果的词典列表
这应该会给你一些接近你想要的输出
records=cursor.fetchall()
fields=[字段[0]用于游标中的字段。说明]
数据=[记录中记录的dict(zip(字段,记录))]
为什么期望有这样的输出fetchall
返回元组列表。好的。还有别的办法吗?我希望输出具有相应的列名,为什么期望输出fetchall
返回元组列表。好的。还有别的办法吗?我想输出相应的列名谢谢,它起作用了谢谢,它起作用了