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

Откуда:
Сообщений: 19
Всех приветствую!
Рассмотрев различные способы построения XML выбрал вот такой метод, однако SELECT ложиться в XML не так как нужно. Подскажите пожалуйста как корректно оформить скрипт что бы результат XML был такой:

<broker_report title="Отчет Брокера за " title2="Отчет Брокера за " title3="Отчет Брокера за " title4="Отчет Брокера за ">
  <spot_trade_operations>
    <item code="ВНБР" name="Внебиржевой Фондовый Рынок" />
    <item code="ФРМБ" name="Фондовый Рынок Московской биржи" />
  </spot_trade_operations>
  <non_trade_money_operations>
    <item id="test1" ids="test2" idf="test3" />
  </non_trade_money_operations>
</broker_report>



А у меня получается вот так:

<broker_report title="Отчет Брокера за " title2="Отчет Брокера за " title3="Отчет Брокера за " title4="Отчет Брокера за ">
  <spot_trade_operations>
    <item>
      <code>ВНБР</code>
      <name>Внебиржевой Фондовый Рынок</name>
    </item>
    <item>
      <code>ФРМБ</code>
      <name>Фондовый Рынок Московской биржи </name>
    </item>
  </spot_trade_operations>
  <non_trade_money_operations>
    <item id="test1" ids="test2" idf="test3" />
  </non_trade_money_operations>
</broker_report>



--Вот сам Скрипт
DROP TABLE #t
declare
@title varchar(200),
@txt_data_in varchar(10),
@txt_data_out varchar(10)

create table #t (code varchar(32), name varchar(32))
INSERT INTO #t (code,name) VALUES ('ВНБР','Внебиржевой Фондовый Рынок')
INSERT INTO #t (code,name) VALUES ('ФРМБ','Фондовый Рынок Московской биржи ')


SET @title = 'Отчет Брокера за '
Select @title as "@title",
@title as "@title2",
@title as "@title3",
@title as "@title4",
(Select	code,name from #t as "@id"
for xml path('item'),type) as "spot_trade_operations",
(Select	'test1' as "@id",
                      'test2' as "@ids",
                      'test3' as "@idf"
for xml path('item'),type) as "non_trade_money_operations"
for xml path('broker_report')
DROP TABLE #t
22 дек 16, 11:30    [20035687]     Ответить | Цитировать Сообщить модератору
 Re: SQL to XML Результат строится криво  [new]
пьяный тюлень
Member

Откуда:
Сообщений: 100
(Select	code as "@code",name as "@name" from #t as "@id"
22 дек 16, 11:40    [20035716]     Ответить | Цитировать Сообщить модератору
 Re: SQL to XML Результат строится криво  [new]
hks-msk
Member

Откуда:
Сообщений: 19
пьяный тюлень,

Спасибо!
22 дек 16, 11:42    [20035728]     Ответить | Цитировать Сообщить модератору
 Re: SQL to XML Результат строится криво  [new]
invm
Member

Откуда: Москва
Сообщений: 9413
Select code as [@code], name as [@name] from #t...
22 дек 16, 11:43    [20035731]     Ответить | Цитировать Сообщить модератору
 Re: SQL to XML Результат строится криво  [new]
hks-msk
Member

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

Спасибо, все получилось!
22 дек 16, 11:50    [20035776]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить