gpt4 book ai didi

sql - 来自XML字段的SQL SELECT作为多个记录

转载 作者:行者123 更新时间:2023-12-03 16:16:18 26 4
gpt4 key购买 nike

我正在从包含XML字段的表ORDERS进行SELECT查询。除其他数据外,XML字段还包含订单行项目。我知道这不是最好的设计,但我必须坚持下去。
我需要选择所有订单行项目。

这使我获得每个订单的第一个订单项:

SELECT
OrderNumber,
[OrderItems].value('(/items/item/sku/node())[1]', 'varchar(20)') AS SKU
FROM Orders
WHERE OrderDate = '2016-04-09'


有没有一种方法可以获取所有发票的所有订单项?

最佳答案

nodes()APPLY一起使用可将XML数据切分成多个记录。例如,假设您要在<sku>元素级别切碎XML,则可以执行以下操作:

SELECT
OrderNumber,
SkuColumn.value('.', 'varchar(20)') AS SKU
FROM Orders
CROSS APPLY OrderItems.nodes('/items/item/sku') SkuTable(SkuColumn)
WHERE OrderDate = '2016-04-09'

关于sql - 来自XML字段的SQL SELECT作为多个记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36526373/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com