2016-04-28 20 views
0

私は現在、このコードは私の最初のアレルゲンレコードを与える以下のXMLを持っており、すべてのallergenID記録レコードを選択

DECLARE @Request XML 

SET @Request = ' 
<ProductAllergen> 
<!---Gluten (Barley)--> 
<Allergen> 
    <AllergenID>1</AllergenID> 
    <AllergenStatusID>1</AllergenStatusID> 
</Allergen> 
<!---Gluten (Wheat)--> 
<Allergen> 
    <AllergenID>2</AllergenID> 
    <AllergenStatusID>1</AllergenStatusID> 
</Allergen> 
<!---Gluten (Rye)--> 
<Allergen> 
    <AllergenID>3</AllergenID> 
    <AllergenStatusID>1</AllergenStatusID> 
</Allergen> 
<!---Eggs--> 
<Allergen> 
    <AllergenID>4</AllergenID> 
    <AllergenStatusID>1</AllergenStatusID> 
</Allergen> 
</ProductAllergen> 

を選択します。 、

SELECT @Request.value('(//AllergenStatusID)[1]','int') 

答えて

2

が、それは私のために働く(取り出し[1]動作しませんでした)

select xD.value('AllergenID[1]', 'VARCHAR(10)') Productid 
from @Request.nodes('/ProductAllergen/Allergen') AS xm(xD)