Click here to Skip to main content
15,884,176 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I need to get an xml output where we have one lead no along with the resultset of aggregate function

Code snippet:
XML
select distinct
ISNULL(job.joblead,'')
ROW_NUMBER() OVER(ORDER BY Desc) as Item_Number ,Count(*) Quantity,Desc Desc
FROM dbo.tableJob job
    left join jobprods  on thejob=tableJob
    left join ItemSkill on tblleadsprodsold_sp.theItem = ItemSkill.theItem
    left join SkillGroup on ItemSkill.theSkillGroup = SkillGroup.theKey
 where thejob = 6670683  and  tableJob=6670683
 group by SkillGroup.theKey, SkillGroup.Desc,tableJob
for xml path('Test')


Current output:
<Test>
  <joblead>6670683</joblead>
  <Item_Number>1</Item_Number>
  <Quantity>3</Quantity>
  <Desc>Inserts</Desc>
</Test>
<Test>
  <joblead>6670683</joblead>
  <Item_Number>2</Item_Number>
  <Quantity>1</Quantity>
  <Desc>Delte</Desc>
</Test>
<Test>
  <joblead>6670683</joblead>
  <Item_Number>3</Item_Number>
  <Quantity>1</Quantity>
  <Desc>Remove</Desc>
</Test>

Desired output:
<Test>
  <joblead>6670683</joblead>

  <Item_Number>1</Item_Number>
  <Quantity>3</Quantity>
  <Desc>Inserts</Desc>

  <Item_Number>2</Item_Number>
  <Quantity>1</Quantity>
  <Desc>Delte</Desc>

  <Item_Number>3</Item_Number>
  <Quantity>1</Quantity>
  <Desc>Remove</Desc>
</Test>
Posted
Updated 21-Feb-13 19:50pm
v4

1 solution

Hi Bharath

Below is the solution for your question. Just keep path('') and include root('Table')

SQL
select distinct
ISNULL(job.joblead,'')
ROW_NUMBER() OVER(ORDER BY Desc) as Item_Number ,Count(*) Quantity,Desc Desc
FROM dbo.tableJob job
    left join jobprods  on thejob=tableJob
    left join ItemSkill on tblleadsprodsold_sp.theItem = ItemSkill.theItem
    left join SkillGroup on ItemSkill.theSkillGroup = SkillGroup.theKey
 where thejob = 6670683  and  tableJob=6670683
 group by SkillGroup.theKey, SkillGroup.Desc,tableJob
for xml path(''), root('Test')


Regards
Willington
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900