Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Analisando OpenXML com vários elementos com o mesmo nome

SELECT *
FROM OPENXML (@index, 'rootnode/group/anothernode')
WITH 
(
  id int '../id',
  anothernode varchar(30) '.'
)

Ou você pode usar o tipo de dados XML assim:
SELECT G.N.value('(id/text())[1]', 'int') AS id,
       A.N.value('text()[1]', 'varchar(30)') AS anothernode
FROM @XMLDoc.nodes('rootnode/group') AS G(N)
  CROSS APPLY G.N.nodes('anothernode') AS A(N)