不多扯,直接上實例代碼,已驗證通過
<fields>
<基本信息_上報信息主題>2018年信息上報<基本信息_上報信息主題/>
</fields>
declare @Theme NVARCHAR(max) --存放文本信息變量
declare @min_id int --存放最小id
set @min_id=(select min(id) from CompanyReport) --設定初始最小id
while @min_id >0 --循環開始
BEGIN
set @Theme=(SELECT Theme FROM dbo.CompanyReport WHERE ID=@min_id) --依次獲取行數據字段信息並賦值給文本變量
update CompanyReport set ContentXML.modify('replace value of (/fields/基本信息_上報信息主題/text())[1] with sql:variable("@Theme")') where id=@min_id --總是將文本變量賦值給最小id所在行,修改某xml節點
set @min_id=(select min(id) from CompanyReport where id>@min_id) --更新最小id爲次行id
END