Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 xml в sql  [new]
nizamovich
Member

Откуда: Москва
Сообщений: 116
хочу выдернуть из XML подблоки если внутри подблока
есть соответствующий элемент.
возможно ли такое ?

Пример :


<f1>
  <season year="2011">
    <race date="27/11/2011" name="BRASIL 2011">
      <result position="1" pilot="Mark Webber" laps="71"
               time="1:32:17.464" grid="2" points="25">555
      </result>
      <result position="2" pilot="Sebastian Vettel" laps="71"
               time="+16.9 secs" grid="1" points="18">666
      </result>
    </race>
  </season>
</f1>


Я хочу получить в качестве результата

<result position="1" pilot="Mark Webber" laps="71"
               time="1:32:17.464" grid="2" points="25">555
      </result>

поскольку там <result>555</result>

как это сделать ?
10 мар 12, 14:00    [12220497]     Ответить | Цитировать Сообщить модератору
 Re: xml в sql  [new]
iljy
Member

Откуда:
Сообщений: 8711
nizamovich,

declare @x xml ='<f1>
  <season year="2011">
    <race date="27/11/2011" name="BRASIL 2011">
      <result position="1" pilot="Mark Webber" laps="71"
               time="1:32:17.464" grid="2" points="25">555
      </result>
      <result position="2" pilot="Sebastian Vettel" laps="71"
               time="+16.9 secs" grid="1" points="18">666
      </result>
    </race>
  </season>
</f1>'


select n.query('.')
from @x.nodes('f1/season/race/result[text()=555]')t(n)
10 мар 12, 14:14    [12220561]     Ответить | Цитировать Сообщить модератору
 Re: xml в sql  [new]
nizamovich
Member

Откуда: Москва
Сообщений: 116
iljy,

то что нужно спасибо.

а не подскажешь толковую русскоязычную (желательно) лит-ру по этой тематике ?
10 мар 12, 14:42    [12220640]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить