У меня есть столбец XML в таблице для анализа. Это образец данных в этом столбце:
<product displaygtin="08858011802159" >
/* First Block */
<identification>
<attributeList>
<attribute name="gpcSegment">
<value>Food/Beverage/Tobacco</value>
</attribute>
</attributeList>
/* Second Block */
</identification>
<itemCertification>
<nutrition>
<attributeList>
<attribute name="foodLabelVersion">
<value>P2017</value>
</attribute>
</attributeList>
</nutrition>
/*Last Block*/
<certification>
<attributeList>
<attribute name="claimKosher">
<value>false</value>
</attribute>
</attributeList>
</certification>
</itemCertification>
</product>
Из первого блока я могу легко извлечь, но во втором и последнем блоке я не получаю никакого результата, пожалуйста, кто-то заглянет в запрос ниже и посоветует, каквыписка из других блоков
SELECT [BundleID]
,[XML]
,[DisplayGTIN]
,b.x.value('.', 'VARCHAR(MAX)') AS "Division"
FROM
[ItemCert_Reporting].[dbo].[Retailer_Extract] AS t1
CROSS APPLY
t1.[XML].nodes('product/identification/attributeList/attribute') AS b(x)
WHERE
displaygtin LIKE '%8858011802159'
AND b.x.value('@name', 'VARCHAR(MAX)') = 'gpcSegment'