我需要一个人的帮助, 我需要更改一些产品ID:
SELECT *
FROM user_item
SET item_type='8063'
WHERE item_type ='8051
好的......很简单,但有问题
有时我需要更新并添加+ 1项。 我真的不知道该怎么做。
示例:
set item_type='962' And add 963
where item_type='8077'
这里的任何人都可以帮助我吗?
Tks
答案 0 :(得分:1)
UPDATE user_item
SET item_type = 962 + 1
WHERE item_type = '8077'
答案 1 :(得分:0)
;with CTE as
( select item_type,
case
when item_type = '962' then CONVERT(varchar(50), convert(int, item_type) + 963)
else CONVERT(varchar(50), convert(int, item_type) + 1)
end as new_item_type
from user_item )
update CTE
set item_type = new_item_type
理想情况下,您应该在其他表或其他规则中查找新项目类型,而不是制作大型,丑陋和脆弱的案例陈述。此示例适用于您在问题中提供的信息。在更新之前在CTE中试验SQL语句。
PS:你的数据类型真的是varchar吗?如果您正在对数据执行数学运算,那么它们肯定应该是整数。您将获得更好的查找和索引性能,并且它们比将它们存储为varchars所需的空间更少。
答案 2 :(得分:0)
或者如果你想用item_type = 963添加另一个字段(如果我理解得当),你可以有一个额外的相关插入查询来改变你所讨论的项目的item_type值。