2017-10-24 15 views
2

SQL ServerテーブルにXMLという列があります。属性値に基づいてSQL ServerテーブルのXML列の行を削除します

<ColumnLayout> 
    <LayoutColumns> 
     <Column PropertyId="43" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
     <Column PropertyId="12" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
     <Column PropertyId="41" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
     <Column PropertyId="16" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
     <Column PropertyId="23" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
     <Column PropertyId="94" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
     <Column PropertyId="98" ColumnWidth="0" IsHidden="false" IsDefaultColumn="false" /> 
    </LayoutColumns> 
</ColumnLayout> 

私はPropertyId = 43を含む列のノードを削除する:

データは次のようになります。

どのようにクエリを実行し、そのテーブルのXML列を更新しますか?

答えて

3

だけdeleteコマンドでのXQuery .modify()メソッドを使用します。

UPDATE dbo.YourTable 
SET Content.modify('delete /ColumnLayout/LayoutColumns/Column[@PropertyId=43]') 
関連する問題