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

Откуда: Питер
Сообщений: 52
Добрый день всем.
У меня мало опыта работы с XML и не могу сообразить как правильно составить запрос к XML-данным вида:

<Root>
  <Document>
      <Field Name="Code">
         <Value>Cargo1</Value>
      </Field>
      <Field Name="Type">
         <Value>777</Value>
      </Field>
      <Field Name="Action">
         <Value>АА</Value>
      </Field>
  </Document>
  <Document>
      <Field Name="Code">
         <Value>Cargo2</Value>
      </Field>
      <Field Name="Type">
         <Value>888</Value>
      </Field>
      <Field Name="Action">
         <Value>ББ</Value>
      </Field>
  </Document>
  <Document>
...
  </Document>
</Root>


В итоге нужно получить выборку:

Code Type Action
------------------------------
Cargo1 777 АА
Cargo2 888 ББ
...

Буду признателен за любой совет.
17 сен 18, 13:30    [21676822]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по XQuery  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 3246
select d.c.value('(./Field[@Name="Code"]/Value)[1]', 'varchar(50)') as [code],
  ...
from @x.nodes('/Root[1]/Document') d(c)
Остальные столбцы - по аналогии.
17 сен 18, 13:34    [21676831]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по XQuery  [new]
HornetBlack
Member

Откуда: Питер
Сообщений: 52
Ennor Tiegael, большое спасибо, все получилось.
17 сен 18, 13:47    [21676856]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить