I have an SQL Table (Table1) with XML field (Field1).
<row foo1="foo11" foo2="foo12" foo3="foo13" />
<row foo1="foo21" foo2="foo22" foo3="foo23" />
<row foo1="foo31" foo2="foo32" foo3="foo33" />
I need to display data in a table format:
foo1 | foo2 | foo3 |
---|---|---|
foo11 | foo12 | foo13 |
foo21 | foo22 | foo23 |
foo31 | foo32 | foo33 |
I tried:
SELECT n.x.value('foo1[1]', 'Varchar(10)') as foo1,
n.x.value('foo2[1]', 'Varchar(10)') as foo2, n.x.value('foo3[1]',
'Varchar(10)') as foo3
FROM Table1
CROSS APPLY Field1.nodes('/row') n(x)
That is not working. I get table that looks like this:
foo1 | foo2 | foo3 |
---|---|---|
Null | Null | Null |
Null | Null | Null |
Null | Null | Null |