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

Откуда: Киев
Сообщений: 439
Привет, есть таблица
declare @tbl table (name varchar(50), type varchar(50), value varchar(max))
insert @tbl	values 
	('имя1','тип1','значение1')
	,('имя2','тип2','значение2')


Из неё нужно получить такую "комбинированную" xml-ку:
<elem name="имя1" type="тип1">значение1<elem/>
<elem name="имя2" type="тип2">значение2<elem/>


Если делать
select * from @tbl for xml auto

получим:
<_x0040_tbl name="имя1" type="тип1" value="значение1" />
<_x0040_tbl name="имя2" type="тип2" value="значение2" />


Если так:
select * from @tbl for xml AUTO , elements


получим
<_x0040_tbl>
  <name>имя1</name>
  <type>тип1</type>
  <value>значение1</value>
</_x0040_tbl>
<_x0040_tbl>
  <name>имя2</name>
  <type>тип2</type>
  <value>значение2</value>
</_x0040_tbl>


А как создать требуемый вариант?
5 мар 13, 13:07    [14013851]     Ответить | Цитировать Сообщить модератору
 Re: создание "комбинированного" xml из таблицы  [new]
Konst_One
Member

Откуда:
Сообщений: 11678
select 
	T.name as '@name',
	T.type as '@type',
	T.value as 'text()'
from @tbl T 
for xml path('elem'), elements, type
5 мар 13, 13:16    [14013940]     Ответить | Цитировать Сообщить модератору
 Re: создание "комбинированного" xml из таблицы  [new]
Leax
Member

Откуда: Киев
Сообщений: 439
Konst_One,

Потрясающе, спасибо огромное!
5 мар 13, 13:19    [14013971]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить