-1

I have an XML

<Table>
  <Columns>
  <Column Name='Name' Datatype='varchar(100)'/>
  </Columns>
  <Rows>
  <Row Name='Test' Number='123'/>
  </Rows>
</Table>

I want to read Name value in the provided xml in sql server How Can I do that?

I tried using

`Declare @XMl XML 
select @xml= cast(Data as xml) from Table
select y.value('Name[1]','varchar(100)') as Name
@xml.nodes(//Row) as x(y)` 

but am getting null values as result set How can I acheieve this in sql server

sai bharath
  • 792
  • 2
  • 10
  • 22

1 Answers1

1

Like this:

    declare @doc xml = 
    '<Table>
      <Columns>
      <Column Name="Name" Datatype="varchar(100)"/>
      </Columns>
      <Rows>
      <Row Name="Test" Number="123"/>
      </Rows>
    </Table>'
    
    select r.value('@Name', 'varchar(200)') Name
    from @doc.nodes('/Table/Rows/Row') n(r)
siggemannen
  • 3,884
  • 2
  • 6
  • 24
David Browne - Microsoft
  • 80,331
  • 6
  • 39
  • 67