Utilice SQL Server para obtener todos los datos de los nodos XML con el mismo nombre
Tengo un archivo XML en el que los nodos de los que necesito los datos reciben el mismo nombre. Entiendo cómo acceder al primer (o segundo registro), por lo que la siguiente consulta solo me da el segundo autor (el<a1>
etiqueta). ¿Cómo consigo todos los autores como una sola columna?
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)