在 SQL Server 2008 中,我想根据该元素的另一个子元素的值(在本例中为 ID)将一些元素和值插入到 xml 列的特定子元素中。xml 当前如下所示:
<Profile>
<ID>16</ID>
<User>
<ID>BC4A18CA-AFB5-4268-BDA9-C990DAFE7783</ID>
<Name>test</Name>
<Activities />
</User>
</Profile>
但是,xml 中可能有多个<User>
元素,我只需要插入到<User>
特定<ID>
值中。如何在 MS SQL Server 2008/t-sql 中实现这一点?
编辑: 为简化起见,我从该列中获取 xml 并将其设置为变量:
DECLARE @profiles_xml xml
DECLARE @profile_id int
SET @profile_id = 16
SET @profiles_xml = (SELECT profiles from tbl_applied_profiles WHERE
profiles.value('(Profile/ID)[1]','int')= @profile_id)
@profiles_xml 生成的 xml 值看起来像我上面的内容。