SQL XML示例

时间:2023-03-10 07:23:54
SQL XML示例
declare @xmlDoc xml,@id varchar(50);

set @xmlDoc='<DocObjContent>
<NewCtrl Id="0001">
<Content_Text>C# Program</Content_Text>
<Content_Text>Java Program</Content_Text>
</NewCtrl>
<NewCtrl Id="0002">
<Content_Text>Java Program</Content_Text>
</NewCtrl>
<NewCtrl Id="Reference_111102102101" Type="3">
<Content_Text>1.XXXXX 2.XXXXX</Content_Text>
</NewCtrl>
</DocObjContent>' select @xmlDoc.query('(/DocObjContent/NewCtrl[@Id="Reference_111102102101"])').value('(/NewCtrl/Content_Text)[1]', 'nvarchar(max)') select @xmlDoc.value('(/DocObjContent/NewCtrl[@Id="Reference_111102102101"]/Content_Text)[1]','nvarchar(max)')
@xmlDoc.value('(/DocObjContent/NewCtrl[@Id=sql:variable("@id")]/Content_Text)[1]','nvarchar(max)')
--动态传值
set @id='Reference_111102102101'
select @xmlDoc.value('(/DocObjContent/NewCtrl[@Id=sql:variable("@id")]/Content_Text)[1]','nvarchar(max)')