Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[98.80.143.34] |
|
Сообщ.
#1
,
|
|
|
Добрый день, имеется запрос
DECLARE @xml1 XML = (SELECT SKz.Title 'Produkt', 'true' 'category/@primary', (SELECT /*top 1*/ /*'<![CDATA['+*/FullTreeNode/*+']]>'*/ 'category' FROM SKz SKz2 LEFT JOIN (SELECT /*top 1*/ ID, RefAg, RefKat FROM SkRefKat) SkRefKat ON SkRefKat.RefAg=SKz.ID LEFT JOIN (SELECT ID, SkKat.FullTreeNode FROM SKKat) SkKat ON SkKat.ID=SkRefKat.RefKat WHERE SKz2.ID=SKz.ID FOR XML PATH ('') ) FROM SKz FOR XML PATH ('Item'), TYPE, ELEMENTS, ROOT ('Items')) /*********************************************************/ DECLARE @str1 as varchar(max)=CAST(@xml1 as nvarchar(max)) SET @str1=Replace(@str1,'&', '&') SET @str1=Replace(@str1,'<', '<') SET @str1=Replace(@str1,'>', '>') SET @xml1=@str1 SELECT @xml1; который возвращает <Items> <Item> <produkt>TITLE1</produkt> <category primary="true" /> <category>CATEGORY1</category> <category>CATEGORY2</category> </Item> <Item> <produkt>TITLE2</produkt> <category primary="true" /> <category>CATEGORY1</category> </Item> </Items> Вопрос, как сделать, чтобы запрос возвращал <Items> <Item> <title>TITLE1</title> <category primary="true">CATEGORY1</category> <category>CATEGORY2</category> </Item> <Item> <title>TITLE2</title> <category primary="true">CATEGORY1</category> </Item> </Items> Спасибо за решение Добавлено SELECT CASE WHEN ROW_NUMBER() OVER(ORDER BY Skz.ID) = 1 THEN 'true' ELSE Null END 'category/@primary' догадался |