需要在SQL中对表的子集进行批量更新吗?

时间:2014-06-09 15:28:48

标签: sql sql-server tsql

我需要批量更新查询产生的记录列表:

select * 
from Subscribers S with (nolock)
where S.COUNTRY_CD is not null and S.REGION is null

因此,运行上述查询只会给我需要更新的记录。

然后,正如我所提到的,我需要对更新这些记录进行更新。我无论如何都不是SQL高手。我怎样才能基本遍历上面得到的结果集并对每个记录执行更新?

1 个答案:

答案 0 :(得分:1)

更新在SQL Server中具有非常灵活的语法。当你有一个表格的选择

SELECT Cols
FROM T
JOIN ...
WHERE Condition

并希望将其变为UPDATE,并将其机械转换为:

UPDATE T
SET ...
FROM T
JOIN ...
WHERE Condition

注意,我刚刚粘贴了最后三行而没有修改。您现在应该能够使您的查询适应基于集合的更新。