0

我想更新与匹配name,appid中的记录。下面的语句将使用下面的语句更新 table1 值table1id

update table1 set name=@name,appid=@appid where id=@id

我还想要一个条件。为此更新所有记录id,但appid不应该更新 if (@appid is null or id=54)。我怎样才能在一列()上做出限制(条件appid)。或者我应该写另一个更新语句?我可以格式化上述查询。请帮忙

4

3 回答 3

1
update table1 set
    name = @name,
    appid = (case when @appid is null or id=54 then appid else @appid end)
where id=@id
于 2012-12-21T06:58:54.020 回答
0

这对你有帮助吗?

update
  table1 
set name=@name,
  appid=ISNUL(@appid, appid) 
where 
  id=(CASE WHEN @id=54 THEN id+1 ELSE @id END)
于 2012-12-21T06:55:41.730 回答
0
update table1 set name=@name,
appid= Case when id=54 then appid else Coalesce(@appid,appid) end where id=@id
于 2012-12-21T06:57:10.140 回答