SQL Update 按条件更新
1. 编写UPDATE语句根据查询条件编写能选择符合条件记录的UPDATE语句,形如:
UPDATE 表名 SET 列名1=新值1, 列名2=新值2, ... WHERE 条件
2. 使用ROWNUM关键字限制记录数为了只更新第一条符合条件的记录,可以使用ROWNUM关键字,形如:UPDATE 表名 SET 列名=新值 WHERE ROWNUM=1
3. 更新多行数据当需要更新多行数据时,可以将WHERE语句表示范围更宽泛,如下:
UPDATE 表名 SET 列名=CASE WHEN 条件1 THEN 值1 WHEN 条件2 THEN 值2 END
在Transact-SQL UPDATE语句中,在本机编译的T-SQL模块中,不支持使用FROM子句或子查询。但是SELECT语句上的本机编译模块支持这些元素。包含FROM子句的UPDATE语句通常用于基于表值参数(TVP)更新表中的信息。
可以结合UPDATE和CASE语句来更新数据,示例:
UPDATE 表名 SET 字段名 = CASE WHEN 条件1 THEN 新值1 WHEN 条件2 THEN 新值2 END
在使用存储过程时,先进行判断再进行更新操作也是一种有效的方式,示例:
IF (@条件 ) BEGIN UPDATE 表名 SET 字段名 = 新值 WHERE 条件 END