2010-03-09 3 views
0

xml 열이있는 테이블 (sqlserver05)이 있습니다. 내가 예를 들어, 새로운 xml 열 해당 XML의 일부를 복사 할 것SQL 서버의 한 열에서 다른 열로 XML의 일부를 복사하십시오.

<doc> 
    <field name="a">foo</field> 
    <field name="b">bar</field> 
    <field name="c">fizz</field> 
    <field name="d">buzz</field> 
</doc> 

:

<doc> 
    <field name="a">foo</field> 
    <field name="c">fizz</field> 
</doc> 

가 어떻게 그렇게 할 수있는 칼럼의 형식이 유사하다?

편집 : 귀하의 경우

declare @x xml; 
set @x = '<doc> 
    <field name="a">foo</field> 
    <field name="b">bar</field> 
    <field name="c">fizz</field> 
    <field name="d">buzz</field> 
</doc>'; 

select @x.query('<doc>{//field[@name="a" or @name="c"]}</doc>'); 

는 XML 컬럼에 XQuery를 적용 :이 (허용 대답 기준)

UPDATE tbl 
SET xml_SubColumn = 
    xml_Column.query('<doc>{//field[@name="a" or @name="c"]}</doc>') 

답변

2

XQuery 사용 나를 위해 일한 것입니다. 물론 XQuery를 특정 케이스에 적용하면 표현식이 사용자의 기준이 @name='a' or @name='b'이라고 가정하는 예제 일뿐입니다.

+0

UPDATE 절을 추가하기 위해 나에게 준 내용이 수정되었으며 완벽하게 작동했습니다. 감사! – stannius

관련 문제