Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come estrarre l'elenco di valori in righe da XML utilizzando XQuery?

Usa questo:

SELECT 
    node.value('.','varchar(100)') AS Val
FROM
    @x.nodes('/PartnerEmails/Email') AS PE(Node)    

Poiché hai più nodi all'interno di <PartnerEmails> , devi usare .nodes() funzione per creare una tabella "inline" di frammenti XML - ogni "riga" in quella tabella contiene un <Email> nodo su cui è quindi possibile eseguire query (ed estrarre il contenuto del nodo XML).