скажем, у меня есть xml в поле типа SQL xml, например:
@x='<root>
<item>
<title></title>
<item>
<title></title>
</item>
</item>
</root>'
Как мне получить элементы n-го уровня в запросе?
Очевидно, что для получения первого уровня вы быиспользуйте;
select
t.p.query('.')
from
@x.nodes('/root/item') t(p)
и чтобы получить следующий уровень, вы бы добавили
cross apply
@x.nodes('/root/item/item')
, но во время выполнения мы не знаем глубину, на которую может пойти xml.
Может ли кто-нибудь направить меня в правильном направлении.
Спасибо!