2012-09-13 159 views
1

我有一個平坦表,我試圖變成一個XML輸出。SQl到XML創建節點

我需要地址部分出現在一個單獨的節點。

Select ID,AddressLine1,PostCode,Price,Name from Property 

我需要這看起來像

<Property> 
    <ID> 1 <ID> 
    <Address> 
     <Line1>10 Downing Street</Line1> 
     <PostCode>SW11SW</Postcode> 
    </Address> 
    <Price> 1,000,000,000 <Price> 
    <Name> My Next House<Name> 
</Property> 

任何想法如何來實現地址的一部分?

感謝 SP

+1

這是SQL Server的? – podiluska

回答

2

假設您正在使用MS SQL Server中,使用FOR XML PATH,試試這個代碼:

DECLARE @Property TABLE (ID INT, [AddressLine1] VARCHAR(30), PostCode VARCHAR(7), 
         Price MONEY, [Name] VARCHAR(20)); 
INSERT @Property 
SELECT 1,'10 Downing Street','SW11SW',1000000000,'My Next House' 

SELECT ID, AddressLine1 AS 'Address/AddressLine1', PostCode AS 'Address/Postcode', 
     Price, Name 
    FROM @Property 
    FOR XML PATH('Property'), ELEMENTS