Home Forums Programming XML how to get the node names as well as node values from xml in sqlserver RE: how to get the node names as well as node values from xml in sqlserver

  • Try this revised query:

    Declare @xml xml

    Set @xml =

    '<XML>

    <Provider>

    <providerID>1</providerID>

    <Address>address1</Address>

    </Provider>

    <Provider>

    <providerID>2</providerID>

    <Address>address2</Address>

    </Provider>

    <Provider>

    <providerID>3</providerID>

    <Address>address3</Address>

    <city>kol</city>

    </Provider>

    </XML>'

    SELECT t.c.value('providerID[1]', 'int') AS 'ProviderID'

    , t.c.value('Address[1]', 'varchar(100)') AS 'Address'

    , t.c.value('city[1]', 'varchar(100)') AS 'City'

    FROM @xml.nodes('/XML/Provider') AS T(C)

    This outputs it in the format that you have specified.