Как я могу получить только часть столбца xml и вернуть его как собственный набор результатов в SQL?
В моей базе данных есть XML-файл, который выглядит следующим образом:
<main>
<data>
<rows>
<_items>
<columns>
<values>
<keyvaluepairs>
<keyvaluepairofstringstring>
<key>EVENT</key>
<value>Wedding</value>
</keyvaluepairofstringstring>
<keyvaluepairofstringstring>
<key>DETAIL</key>
<value>Smith-Wesson</value>
</keyvaluepairofstringstring>
</keyvaluepairs>
</values>
</columns>
<columns>
<values>
<keyvaluepairs>
<keyvaluepairofstringstring>
<key>EVENT</key>
<value>Reunion</value>
</keyvaluepairofstringstring>
<keyvaluepairofstringstring>
<key>DETAIL</key>
<value>Class of 1996</value>
</keyvaluepairofstringstring>
</keyvaluepairs>
</values>
</columns>
<columns>
<values>
<keyvaluepairs>
<keyvaluepairofstringstring>
<key>EVENT</key>
<value>Pie-throwing contest</value>
</keyvaluepairofstringstring>
<keyvaluepairofstringstring>
<key>DETAIL</key>
<value>Cherry pies</value>
</keyvaluepairofstringstring>
</keyvaluepairs>
</values>
</columns>
</_items>
</rows>
</data>
</main>
И я хочу вернуть «строки» в результирующем наборе следующим образом:
EVENT NAME
Wedding Smith-Wesson
Reunion Class of 1996
Pie-throwing contest Cherry pies
...etc...
Я использую метод , описанный здесь , для запроса отдельных значений, но этого недостаточно для получения всех данных, которые мне действительно нужны.
Я использую SQL Server 2008.
Редактировать: чтобы уточнить, этот xml содержится в одной строке. Например, чтобы вернуть вышеупомянутый xml, я бы набрал
select my_xml_column from my_table;