根据减去其他值

时间:2017-06-04 13:07:40

标签: sql sqlite

我在编写一个查询时遇到问题,该查询将名为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 ')而不是减去(+),则查询将按预期工作,但是当尝试减去它们时没有-值的值是列默认值的变化。

我做错了什么?

编辑:根据现在删除的评论 - 我尝试在变量名称周围添加括号,但没效果。

1 个答案:

答案 0 :(得分:1)

我相信你应该根据我的理解改变你的查询

UPDATE players 
SET improvement = latest - prev_list 
WHERE latest IS NOT NULL
AND ( prev_list IS NOT NULL AND prev_list <> 0 )