我在编写一个查询时遇到问题,该查询将名为improvement
的列的值设置为存储在名称存储在变量latest
和{{1}中的列中的整数值之间的差异}。
我当前的查询(使用python字符串连接)是:
prev_list
现在,如果我更改查询以便在括号内添加('UPDATE players SET improvement=(' + latest + '-' + prev_list + ') WHERE ' + latest + ' IS NOT NULL AND ' + prev_list + 'IS NOT NULL AND ' + prev_list + ' != 0 '
)而不是减去(+
),则查询将按预期工作,但是当尝试减去它们时没有-
值的值是列默认值的变化。
我做错了什么?
编辑:根据现在删除的评论 - 我尝试在变量名称周围添加括号,但没效果。
答案 0 :(得分:1)
我相信你应该根据我的理解改变你的查询
UPDATE players
SET improvement = latest - prev_list
WHERE latest IS NOT NULL
AND ( prev_list IS NOT NULL AND prev_list <> 0 )