DECLARE @xml XML
SET @xml ='
<ItemsList>
<A>123</A>
<B>123</B>
<IdMapping>
<Inv>
<Id>001</Id>
<Type>A01</Type>
<Part>01</Part>
</Inv>
<Inv>
<Id>002</Id>
<Type>A02</Type>
<Part>02</Part>
</Inv>
<Inv>
<Part>03</Part>
</Inv>
<Inv>
<Part>05</Part>
</Inv>
<Inv>
<Part>09</Part>
</Inv>
</IdMapping>
</ItemsList>'
SELECT @xml 我想要的结果是
1.0 如果 此节点 <Id></Id>(例如: <Id>001</Id>, <Id>002</Id> ) 是有值, 结果为,去掉所有<Part></Part> 节点
SET @xml ='
<ItemsList>
<A>123</A>
<B>123</B>
<IdMapping>
<Inv>
<Id>001</Id>
<Type>A01</Type>
</Inv>
<Inv>
<Id>002</Id>
<Type>A02</Type>
</Inv>
</IdMapping>
</ItemsList>'
2.0 如果 此节点 <Id></Id> 没有值: 则修改节点名称为 <NewInv></NewInv>
SET @xml ='
<ItemsList>
<A>123</A>
<B>123</B>
<IdMapping>
<NewInv>
<Part>03</Part>
</NewInv>
<NewInv>
<Part>05</Part>
</NewInv>
<NewInv>
<Part>09</Part>
</NewInv>
</IdMapping>
</ItemsList>'
SET @xml ='
<ItemsList>
<A>123</A>
<B>123</B>
<IdMapping>
<Inv>
<Id>001</Id>
<Type>A01</Type>
<Part>01</Part>
</Inv>
<Inv>
<Id>002</Id>
<Type>A02</Type>
<Part>02</Part>
</Inv>
<Inv>
<Part>03</Part>
</Inv>
<Inv>
<Part>05</Part>
</Inv>
<Inv>
<Part>09</Part>
</Inv>
</IdMapping>
</ItemsList>'
SELECT @xml 我想要的结果是
1.0 如果 此节点 <Id></Id>(例如: <Id>001</Id>, <Id>002</Id> ) 是有值, 结果为,去掉所有<Part></Part> 节点
SET @xml ='
<ItemsList>
<A>123</A>
<B>123</B>
<IdMapping>
<Inv>
<Id>001</Id>
<Type>A01</Type>
</Inv>
<Inv>
<Id>002</Id>
<Type>A02</Type>
</Inv>
</IdMapping>
</ItemsList>'
2.0 如果 此节点 <Id></Id> 没有值: 则修改节点名称为 <NewInv></NewInv>
SET @xml ='
<ItemsList>
<A>123</A>
<B>123</B>
<IdMapping>
<NewInv>
<Part>03</Part>
</NewInv>
<NewInv>
<Part>05</Part>
</NewInv>
<NewInv>
<Part>09</Part>
</NewInv>
</IdMapping>
</ItemsList>'
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货