У меня есть XML-файл, где узлы, в которых мне нужны данные, все одинаковые. Я понимаю, как получить доступ к первой (или второй записи), поэтому следующий запрос дает мне только второго автора (тег <a1>
). Как получить всех авторов в виде одного столбца?Использование SQL Server для получения всех данных из узлов XML с одинаковым именем
DECLARE @MyXML XML
SET @MyXML = '<refworks>
<reference>
<rt>Journal Article</rt>
<sr>Print(0)</sr>
<id>869</id>
<a1>Aabye,Martine G.</a1>
<a1>Hermansen,Thomas Stig</a1>
<a1>Ruhwald,Morten</a1>
<a1>PrayGod,George</a1>
<a1>Faurholt-Jepsen,Daniel</a1>
<a1>Jeremiah,Kidola</a1>
<a1>Faurholt-Jepsen,Maria</a1>
<a1>Range,Nyagosya</a1>
</reference>
</refworks>'
SELECT
author.value('(a1)[2]', 'varchar(MAX)') AS 'Author'
FROM @MyXML.nodes('/refworks/reference') AS ref(author)
Высоких - большое спасибо , Можете ли вы указать мне какую-то ссылку, которая объясняет, что она делает? – user918967
Дайте мне знать, если у вас все еще есть сомнения после прохождения через документы. – praveen
@praveen. Пожалуйста, взгляните на мой вопрос здесь: http://stackoverflow.com/questions/27638108/how-to-get-specific-result- из-а-поиск-в-SQL-колонки малонаселенных-с-XML – SearchForKnowledge