2011-01-13 16 views
0

SQLでxpathクエリを使用して、XMLのチャンク(つまり、コンテンツだけでなくノードのXML全体)を抽出しようとしています。私は1つのコンテンツフィールドを抽出することができますが、上記を行う方法がわかりません。SQLでxpathクエリを使用してXMLを抽出する

Table.value('(/head/instance/tag1)[1]', 'varchar(max)') as "col" 

は私がTAG1内のXMLのすべてを抽出したいと思いますし、このようなものは、SQLクエリに働くだろう期待していた

<head> 
    <instance> 
     <tag1> 
       <tag2>data</tag2> 
       <tag3>data</tag3> 
     </tag1> 
    </instance> 
</head> 

を次のようにXMLがあると言います

助けがあれば助かります。

おかげ

+0

user270370 @:これは、XPath式のためではなく、無standarのSQLを求めていませんタイプ変換 –

答えて

2

これは動作するはずです:

Select Cast(Table.xmlcolumnname.query('/head/instance/tag1') as varchar(max)) 'col'; 

(そのチェックされていないタイプミスが含まれていてもよい。..!)

+0

輝き!ありがとう – user270370