Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何更新到具有相同值的列?_Python_Postgresql - Fatal编程技术网

Python 如何更新到具有相同值的列?

Python 如何更新到具有相同值的列?,python,postgresql,Python,Postgresql,您好,我想知道在python中是否可以用一个值更新两列。我想UPDATElevels表,并用相同的len(str(message.content))*0.03值更新名为xp和total_xp的两列 以下是我的工作内容: sql = ("UPDATE levels SET xp=%s, total_xp=%s WHERE guild_id = %s and user_id = %s") val = (exp + 2 + math.floor(len(st

您好,我想知道在python中是否可以用一个值更新两列。我想
UPDATE
levels表,并用相同的
len(str(message.content))*0.03值更新名为
xp
total_xp
的两列

以下是我的工作内容:

sql = ("UPDATE levels SET xp=%s, total_xp=%s WHERE guild_id = %s and user_id = %s")
            val = (exp + 2 + math.floor(len(str(message.content))*0.03), str(message.guild.id), str(message.author.id))
            cursor.execute(sql, val)
            conn.commit()
我想对
xp
total\u xp
使用
len(str(message.content))*0.03)


感谢您的帮助。

只需添加一些变量:

sql = "UPDATE levels SET xp=%s, total_xp=%s WHERE guild_id = %s and user_id = %s"
xp = total_xp = exp + 2 + math.floor(len(str(message.content))*0.03)
guild_id = str(message.guild.id)
user_id = str(message.author.id)
cursor.execute(sql, (xp, total_xp, guild_id, user_id))
conn.commit()