Reputation: 1081
Hi I have the following table data I need to convert to Xml in SQl Server. Any ideas?
Thanks in advance
From
Party_Id HomePhoneNumber WorkPhoneNumber
62356 6314993578
62356 6314590922
62356 6313795488
To
<HomePhoneNumber>6314993578</HomePhoneNumber>
<WorkPhoneNumber>6314590922</WorkPhoneNumber>
<WorkPhoneNumber>6313795488</WorkPhoneNumber>
Upvotes: 3
Views: 100
Reputation: 82010
Convert the empty values into NULLs. These NULL values will be excluded from the XML.
Declare @YourTable table (Party_Id int,HomePhoneNumber varchar(25),WorkPhoneNumber varchar(25))
Insert Into @YourTable values
(62356,'6314993578',''),
(62356,'','6314590922'),
(62356,'','6313795488')
Select HomePhoneNumber=case when HomePhoneNumber='' then null else HomePhoneNumber end
,WorkPhoneNumber=case when WorkPhoneNumber='' then null else WorkPhoneNumber end
From @YourTable
For XML Path('')
Returns
<HomePhoneNumber>6314993578</HomePhoneNumber>
<WorkPhoneNumber>6314590922</WorkPhoneNumber>
<WorkPhoneNumber>6313795488</WorkPhoneNumber>
Upvotes: 5