2009-03-16 8 views
0

SQL Server 2005の下のコードから最初のレコードを戻すことができます。それらはすべて入手できますか?私は「[1]」インデックスを削除した場合、私はいくつかのシングルトンエラーを取得...XQueryとSQL Server 2005からの行セットの取得

declare @xml xml 
set @xml = 
'<my:myFields xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2009-03-16T20:13:11"> 
<my:field>test1</my:field> 
<my:field>test2</my:field> 
<my:field>test3</my:field> 
<my:field>test4</my:field> 
</my:myFields>' 
SELECT @xml.value('declare namespace  my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2009-03-16T20:13:11";   
(/my:myFields/my:field)[1]', 'varchar(100)') as test 
+0

I'vは、query()メソッドを試してみましたが、連結のすべての値を1行を取得 - : 宣言@ XMLのXML セット@xml = 「 test1の test2は test3に TEST4 ' テストとしてSELECT @ xml.query('/myFields/field/text() ') – Graeme

答えて

0
declare @xml xml 
set @xml = 
'<my:myFields xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2009-03-16T20:13:11"> 
<my:field>test1</my:field> 
<my:field>test2</my:field> 
<my:field>test3</my:field> 
<my:field>test4</my:field> 
</my:myFields>' 

SELECT Y.ID.value('.', 'varchar(100)') as test 
FROM @xml.nodes('declare namespace my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2009-03-16T20:13:11"; 
       (/my:myFields/my:field)') as Y(ID) 
関連する問題