总结一下。我有一个db(MySQL)行的数据。脚本中使用此数据来计算值。 for循环用于计算表中每行的该值。 问题:存储在变量中的结果必须在同一行的不同列中更新。
我试图在for循环中包含update命令但是我收到错误(见下文)。如果我没有在for循环中包含update-command,我只得到最后一行的结果,但是对于所有行!
剧本:
for row in rows:
for col in row:
x = map(str.strip,col.lower().split())
st = map(lambda wo: abo.get(wo, 0), x)
meant = numpy.meant(st)
cur.execute("""UPDATE table_x SET result = %s Where text = %s""",(meant, rows))
不幸的是我收到了这个错误:
Programming Error: (1064, 'You have an error in your SQL syntax; check the manual...
如何使用该行的每个计算值(平均值)更新列?
答案 0 :(得分:0)
我看到rows
是一个列表(或可迭代的)
并在您的查询中,您将占位符与rows
(而不是row
绑定?)
cur.execute("""UPDATE table_x SET result = %s Where text = %s""",(meant, rows)
这很可能会产生语法错误。