【发布时间】:2019-09-24 19:20:21
【问题描述】:
我的 DataXML 看起来像这样
<TestResults>
<MethodResult>
X
X
<StepResult name="BluetoothERROR">
X
X
X
X
X
X
X
<StepResult name="FLOWERROR1">
<Number value="-100" />
</ActualValue>
X
X
<StepResult name="PowerOffError">
X
X
X
</StepResult>
</MethodResult>
</TestResults>
其中 X 表示具有不同名称的 StepResult 的其他实例,例如 BluetoothError 或 PowerOffError。假设其他 StepResults 可以具有与“FLOWERROR1”相似的输出。
我对名为“FlowError1”的 StepResult 特别感兴趣,我想返回 -100 的 Number 值。
我已经尝试过这行代码,但它不起作用,只显示 Nulls。
f.ResultXML.value('(/TestResults/MethodResult/StepResult/ActualValue/Number/@Value)[1]', 'varchar(max)') As "Actual Value"
我应该怎么做?
【问题讨论】:
-
在 XML 路径中 ActualValue 是否应该在 Number 之后?
标签: sql sql-server xml sqlxml