使用 MySQL 数据库中的 python 烧瓶计算列的平均值:名称错误:未定义名称"rate"



我正试图在flask服务器上使用python(MySQLdb(从名为jacket的MySQL数据库表中计算名为rate的列的平均值
我试过

c.execute("""SELECT AVG(%s) FROM jacket""",(rate))
avg = c.fetchone()

该应用程序运行时没有任何错误,但查询不会返回任何结果。同样在cmd中,我得到错误:
c.execute("""SELECT AVG(%s) FROM jacket""",(rate)) NameError: name 'rate' is not defined

这是什么意思?做这件事的正确方法是什么?

您可以计算列的平均值,如下所示

c.execute("""SELECT AVG(rate) AS avg_rate FROM jacket """)
avg = c.fetchone()

首先,您可以连接到数据库作为第一行。然后,您应该为写入查询创建一个游标。您可以将查询创建为字符串。如果您将查询作为参数来执行函数并获取结果,您就可以处理它

conn = mysql.connect()
cursor =conn.cursor()
query = "SELECT AVG(rate) from User"
cursor.execute(query)
result = cursor.fetchall() # or fetchone()

最新更新