如何将一个字段中的值替换为同一视图表(SQL)中另一个字段(不同列)中的值?

如何将一个字段中的值替换为同一视图表(SQL)中另一个字段(不同列)中的值?,sql,tsql,Sql,Tsql,我想知道是否可以使用另一列和另一行中的值替换一个字段中的值 我希望第15行中的总赎回价值400替换为-1*-395;值-395来自第6行的EarnPointsLeft,两者都具有相同的CID,这意味着他们是同一个人。有什么建议吗?您需要此更新声明: update t set t.sumredeemed = (-1) * (select earnpointsleft from FifoPtsView where cid = t.cid) from FifoPtsView t where t.cid

我想知道是否可以使用另一列和另一行中的值替换一个字段中的值


我希望第15行中的总赎回价值400替换为-1*-395;值-395来自第6行的EarnPointsLeft,两者都具有相同的CID,这意味着他们是同一个人。有什么建议吗?

您需要此更新声明:

update t
set t.sumredeemed = (-1) * (select earnpointsleft from FifoPtsView where cid = t.cid)
from FifoPtsView t
where t.cid = 5000100008 and t.earnpointsleft = 0

如果select语句只返回一行,这将起作用。

您只需更新表即可

update t
set t.sumredeemed = ABS(t2.earnpointsleft )
from FifoPtsView t join FifoPtsView t2 on t.cid = t.cid and isnull(t2.earnpointsleft,0)>0
如果想要负值,可以移除ABS,
请给我您的反馈

编辑您的问题并显示您想要的结果集。还有,什么是字段1和字段6?这在你的样本数据中并不明显。嗨,我用表格截图和编码参考重新编辑了这个问题。有什么建议吗?不引用插入和删除的更新触发器是不常见的。您认为哪一行将提供set@CID=select CID from FifoPtsView的值?