我在这里有XML文件:
<Setup>
<Include Type="Product">
<Value uomid="8078">469700_3:9000;2:10000;</Value>
</Include>
</Setup>
这是我的商店获取数据:
PromotionSetup.query(''
for $PS in Setup/Include[@Type = ''''Product'''']/Value[text()]
where contains($PS, ''''' + CAST(@productID AS NVARCHAR) + '_'''') or $PS = ''''' + CAST(@productID AS NVARCHAR) + '''''
return data($PS)
'')).value(''(.)'', ''nvarchar(max)'') as InfoProductPromotion
这个商店只收到一个参数,意思是:469700。 所以。我得到了一个设置两个参数的考验:一个是ProductID:469700,第二个是:uomid:8078。结果将是469700_3:9000; 2:10000;。 所以有人可以帮我制作一个商店程序来获取带有2个参数的数据。
答案 0 :(得分:0)
我的问题解决了:
PromotionSetup.query(''
for $PS in Setup/Include[@Type = ''''Product'''']/Value[@uomid='''''+CAST(@uomID as nvarchar)+'''''][text()]
where contains($PS, ''''' + CAST(@productID AS NVARCHAR) + '_'''') or $PS = ''''' + CAST(@productID AS NVARCHAR) + '''''
return data($PS)'')).value(''(.)'', ''nvarchar(max)'') as InfoProductPromotion