Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SQL Server - Convert table data to xml

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>
like image 357
user481779 Avatar asked Jun 16 '26 07:06

user481779


1 Answers

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>
like image 89
John Cappelletti Avatar answered Jun 18 '26 10:06

John Cappelletti



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!