我的存储过程中有一个xml参数,我需要检查并将这些值过滤到表中
<Root>
<SupplierID>3</SupplierID>
<step Step="1">
<Payment>1</Payment>
<dayofpayment>01.06.18</dayofpayment>
</step>
<step Step="2">
<Payment>0</Payment>
<dayofpayment></dayofpayment>
</step>
</Root>
这是我的xml,它通过过程中名为@Xml的变量传递。我的桌子看起来像这样
+ -------------- + ----------------- + ------------- ---- + ---------------- +
|供应商编号| paid_step_1 | paid_step_2 | paid_step3 |
+ -------------- + ----------------- + ---------------- -+ ---------------- +
| | | <<<|
+ -------------- + ----------------- + ---------------- -+ ---------------- +
我已经设法使用以下方法来解析xml:
With XmlTable as (
Select
Payment = Tbl.Col.value('Payment[1]', 'varchar(1)'),
Day_of_payment = Tbl.Col.value('dayofpayment[1]', 'varchar(10)'),
FROM @XML.nodes('//step ') Tbl(Col)
)
我的问题是:如何正确将xml传输到表中?