2015-10-06 59 views
0

我在客戶表中有一個xml腳本。下面的結構是結構我需要在表如何閱讀XML列?

<pricer xmlns="http://www.Card.com/xxxx/xxxx"> 
 
    <service> 
 
    <response> 
 
     <businessObjectModel> 
 
     <Id>0</Id> 
 
     <Card xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Card"> 
 
      <ID>1</ID> 
 
      <Inc>0.0</Inc> 
 
      <value>0.0</value> 
 
      <Tvalue1>0.0</Tvalue1> 
 
     </Card> 
 
     </businessObjectModel>

我需要一個像見下表:

enter image description here

+3

哪個RDBMS做y ou使用? – Mithrandir

+0

ms-sql 2012服務器 – Samanth

回答

1

如果你想迭代卡的,你可以不喜歡它這個:

DECLARE @XML XML 
SET @XML = ' 
<pricer xmlns:xsi="http://www.Card.com/xxxx/xxxx"> 
    <service> 
    <response> 
     <businessObjectModel> 
     <Id>0</Id> 
     <Card xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Card"> 
      <ID>1</ID> 
      <Inc>0.0</Inc> 
      <value>0.0</value> 
      <Tvalue1>0.0</Tvalue1> 
     </Card> 
     </businessObjectModel> 
     <businessObjectModel> 
     <Id>1</Id> 
     <Card xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Card"> 
      <ID>1</ID> 
      <Inc>2.0</Inc> 
      <value>1.0</value> 
      <Tvalue1>2.0</Tvalue1> 
     </Card> 
     </businessObjectModel> 
     </response></service></pricer>' 

SELECT 
Tbl.Col.value('ID[1]', 'int'), 
Tbl.Col.value('Inc[1]', 'decimal'), 
Tbl.Col.value('value[1]', 'decimal'), 
Tbl.Col.value('Tvalue1[1]', 'decimal') 
FROM @XML.nodes('pricer/service/response/businessObjectModel/Card') Tbl(Col) 
GO 
+0

我不能以上述格式生成系統。 – Samanth

+0

更改了對所需格式的答案 – calinaadi