Declare @xmlData xml
set @xmlData = convert(xml,
'<root><Orders>
<Order>
<OrderNumber>456456019</OrderNumber>
<ProductType>PO</ProductType>
<ProductID>4654</ProductID>
<BundleOrderNumber>B3025094</BundleOrderNumber>
<ProductDescription>Lined 50-Sheet Notepad</ProductDescription>
<SiteName>Event Note Takers</SiteName>
<RedLineQty>5000</RedLineQty>
<TargetInventory>20000</TargetInventory>
</Order>
<Order>
<OrderNumber>456456020</OrderNumber>
<ProductType>FF</ProductType>
<ProductID>1234</ProductID>
<BundleOrderNumber>B3025094</BundleOrderNumber>
<ProductDescription>Lined 50-Sheet Notepad</ProductDescription>
<SiteName>Event Note Takers</SiteName>
<RedLineQty>5000</RedLineQty>
<TargetInventory>20000</TargetInventory>
</Order>
<Order>
<OrderNumber>456456021</OrderNumber>
<ProductType>PO</ProductType>
<ProductID>56454</ProductID>
<BundleOrderNumber>B3025094</BundleOrderNumber>
<ProductDescription>Lined 50-Sheet Notepad</ProductDescription>
<SiteName>Event Note Takers</SiteName>
<RedLineQty>5000</RedLineQty>
<TargetInventory>20000</TargetInventory>
</Order>
</Orders></root>');
-- Temp table to store the xml for temp selection
Declare @tbl as Table
(xData xml)
insert into @tbl values(@xmlData)
-- final table which will have the xml rows
Declare @tblFinal TABLE
(xData xml)
insert into @tblFinal (xData)
SELECT T2.Orders.query('.')
FROM @tbl
CROSS APPLY @xmlData.nodes('/root/Orders/Order') as T2(Orders)
select * from @tblFinal
No comments:
Post a Comment