根据参数值执行XQuery SQL
我的 XML 如下所示:
<Product sequence_number="1" number="1543448904" id="S1" unit_number="1">
<consumer_narrative name="GLENN,GREGORY" date_filed="02/13/2009">
<message type="Consumer Comments">THE CONSUMER STATES THIS WAS NOT </message>
<message type="Consumer Comments">THE PRODUCT REQUESTED.</message>
</consumer_narrative></Product> <Product sequence_number="2" number="1543448905" id="S1" unit_number="1">
<consumer_narrative name="JOHN,GORDON" date_filed="08/23/2009">
<message type="Consumer Comments">THE CONSUMER STATES THAT</message>
<message type="Consumer Comments">WRONG PRODUCT WAS SENT.</message>
</consumer_narrative> </Product>
我的查询:
SELECT
tab.col.value('../../@number', 'varchar(30)') [Claim Number],
tab.col.value('../@name', 'varchar(30)') [Name],
tab.col.value('../@date_filed', 'varchar(30)') [DateField],
tab.col.value('@type', 'varchar(50)') [Type],
tab.col.value('.', 'varchar(250)') [CustomerComments]
FROM XMLTABLE AS B
CROSS APPLY xmldocument.nodes('//Product/consumer_narrative/message') tab(col)
WHERE B.XMLId = 123
我想传递“number”作为参数,并仅获取与该索赔编号关联的数据。 提前致谢。
This is how my XML looks like :
<Product sequence_number="1" number="1543448904" id="S1" unit_number="1">
<consumer_narrative name="GLENN,GREGORY" date_filed="02/13/2009">
<message type="Consumer Comments">THE CONSUMER STATES THIS WAS NOT </message>
<message type="Consumer Comments">THE PRODUCT REQUESTED.</message>
</consumer_narrative></Product> <Product sequence_number="2" number="1543448905" id="S1" unit_number="1">
<consumer_narrative name="JOHN,GORDON" date_filed="08/23/2009">
<message type="Consumer Comments">THE CONSUMER STATES THAT</message>
<message type="Consumer Comments">WRONG PRODUCT WAS SENT.</message>
</consumer_narrative> </Product>
My Query :
SELECT
tab.col.value('../../@number', 'varchar(30)') [Claim Number],
tab.col.value('../@name', 'varchar(30)') [Name],
tab.col.value('../@date_filed', 'varchar(30)') [DateField],
tab.col.value('@type', 'varchar(50)') [Type],
tab.col.value('.', 'varchar(250)') [CustomerComments]
FROM XMLTABLE AS B
CROSS APPLY xmldocument.nodes('//Product/consumer_narrative/message') tab(col)
WHERE B.XMLId = 123
I would like to pass "number" as parameter and get only the data associated with that claim number.
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
....
....