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

(
id int,
F1 varchar(5)
);

create table #t1
(
id int,
parentid int,
F1 varchar(5)
);
insert into #t values(1,'a');
insert into #t values(2,'b');
insert into #t values(3,'c');

insert into #t1 values(1,1,'a');
insert into #t1 values(2,1,'b');
insert into #t1 values(3,2,'c');

select
1 as Tag ,
Null as parent ,
#t.id as [#t!1!id] ,
#t.f1 as [#t!1!f1] ,

null as [#t1!2!id] ,
null as [#t1!2!parentid],
null as [#t1!2!f1]
FROM #t
UNION ALL
SELECT
2 as Tag,
1 as Parent,
#t.id,
#t.f1,

#t1.id ,
#t1.parentid,
#t1.f1
from #t,#t1
WHERE #t1.parentid=#t.id
FOR XML EXPLICIT


<?xml version="1.0" encoding="WINDOWS-1251" ?>
- <root>
<#t id="1" f1="a" />
<#t id="2" f1="b" />
- <#t id="3" f1="c">
<#t1 id="1" parentid="1" f1="a" />
<#t1 id="2" parentid="1" f1="b" />
<#t1 id="3" parentid="2" f1="c" />
</#t>
</root>

Получается что все дочерние узлы оказываются внутри последнего.
А нужно что бы было в соответствии с Parentid.
Что я не так написал?
14 авг 03, 11:10    [300090]     Ответить | Цитировать Сообщить модератору
 Re: помогите с XML-запросом  [new]
злой шаман
Member

Откуда: Питер
Сообщений: 1253
WHERE #t1.parentid=#t.id
ORDER BY #t.id,#t.tag
FOR XML EXPLICIT
14 авг 03, 11:15    [300098]     Ответить | Цитировать Сообщить модератору
 Re: помогите с XML-запросом  [new]
sardonyx
Member

Откуда:
Сообщений: 39
Nado dobavit' Order by:

.....
WHERE #t1.parentid=#t.id
order by #t.id
FOR XML EXPLICIT
14 авг 03, 11:15    [300100]     Ответить | Цитировать Сообщить модератору
 Re: помогите с XML-запросом  [new]
Glory
Member

Откуда:
Сообщений: 104760
order by [#t!1!id], [#t1!2!id]
14 авг 03, 11:16    [300101]     Ответить | Цитировать Сообщить модератору
 Re: помогите с XML-запросом  [new]
goga2003
Guest
спасибо, блин, большое!!!
14 авг 03, 11:19    [300107]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить