Using FLWOR to get data from another table(使用FLWOR从另一个表中获取数据)
本文介绍了使用FLWOR从另一个表中获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在SQL Server 2012中有一个表,其结构如下:
Data
列的类型为XML
,内容如下:
我想用新的XML更新表的每一行,以便在TextReadingID之后查找名为TextReadingID的新节点
我有一个二级表,其中包含文本读取值steid和textreadingid
并且我希望我的TextReadingId值来自上表
这就是我尝试的,但它没有按预期工作
Here is another answer that helped but it does not join with my other table for the results
推荐答案
最简单的方法是重建每个Step
节点,然后使用FOR XML
将其聚合起来
在相关子查询中,我们执行以下操作:
- 使用
.nodes()
拆分Step
节点 - 在
StepId
节点值上的左联接StepReading
- 创建包含新
Step
节点的未命名列... - .它包含使用
./*
... 的现有对象的所有子对象
- .和一个额外的子节点
TextReadingId
,其值来自StepReading
- 然后使用
FOR XML
聚合备份
SQL Fiddle
这篇关于使用FLWOR从另一个表中获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!