在 Python 中运行 SQL 并使用 python 将输出值分配给变量

问题描述 投票:0回答:1

使用 Python 脚本中包含的 SQL 查询,我需要能够将每个列值(2 列,只有 1 行作为查询的输出)分配给这样的变量:

sqlquery = """SELECT MIN(DATE) AS STARTDATE, MAX(DATE) AS ENDDATE
              FROM table"""

cursor.execute(sqlquery)

sqlqueryresult = cursor.fetchall()

sqlqueryresult = list(sqlqueryresult)

STARTDATE, ENDDATE = [sqlqueryresult[i] for i in (0, 1)]

但是我收到此错误:IndexError:列表索引超出范围

我做错了什么? 谢谢!

python sql
1个回答
0
投票

您就快成功了,只需这几个更改即可帮助您实现目标。

sqlquery = """SELECT MIN(DATE) AS STARTDATE, MAX(DATE) AS ENDDATE
              FROM table"""

cursor.execute(sqlquery)

sqlqueryresult = cursor.fetchone()

STARTDATE, ENDDATE = [sqlqueryresult[i] for i in range(0, 2)]

print("STARTDATE = ", STARTDATE)
print("ENDDATE = ", ENDDATE)
© www.soinside.com 2019 - 2024. All rights reserved.