问题标签 [xquery-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
131 浏览

tsql - MSSQL 2008 获取所有级别的项目

假设我在 SQL xml 类型字段中有 xml,例如

我将如何在查询中获取第 n 级项目?

显然要获得您将使用的第一级;

并获得下一个级别以及您将添加

但在运行时,我们不知道 xml 可能达到的深度。

谁能指出我正确的方向。

谢谢!

0 投票
2 回答
1383 浏览

sql - XQuery 和节点 ID

我有这个变量:

它存储了以下xml:

我有这个用于获取数据的查询:

我需要一种方法来将它们来自 xml 文件的顺序添加到我的结果中。(这是 Table1 的第一个实例,然后是第二个......)。

由于SQL 表变量限制的原因,我不能使用标识列来保持这一点。(出于其他原因,我不想使用临时表。)

我希望有一个很酷的 SQL XML 函数可以返回某种内部分配的节点 ID。(或其他类似的排序方式。)

请注意,我不控制此 XML 结构(我只是一个读者),因此我无法更改以添加 ID 属性。

任何建议都会很棒!

编辑/更新:

我真的很想拥有这样的数据:

但我来不及了。我可以将它放入列(或多或少),但我不知道如何进行编号。如果您有任何想法,我很想听听。

编辑:
我想出了执行此操作的查询(在互联网的帮助下)。它看起来像这样:

0 投票
1 回答
5418 浏览

sql - SQL Server XML 添加属性(如果不存在)

如果属性不存在,我正在尝试添加它。它应该很简单,但我是 XML XPath/XQuery/etc. 的新手,所以请原谅我的无知。

我希望能够传递 XML 数据并对其进行修改...

如果我传递如下数据:

我想

并不是 :

0 投票
1 回答
2961 浏览

xml - 如何在不使用 SQL Server 中的 XQuery 硬编码元素名称的情况下从 XML 中提取值?

我将 xml 存储在一个表和表中,其中包含我感兴趣的元素的名称/路径。

我想在没有硬编码路径和/或元素名称的情况下提取这些元素的值。我的 xml 的结构不会改变,它总是有父/子/元素。

是否可以加入 xml 和 table 以获取元素的值?

以下是我能够得到的示例。我认为可以将此解决方案扩展到 JOIN on ChildNode 和 Element,但不确定如何使用.query().value()到达 ChildNode 和 Element。

谢谢您的帮助。

0 投票
1 回答
97 浏览

sql-server - How can grouping be done to the following code/grouping be done in XML data

My code is executing perfectly fine, but when I write the group by clause it throws an error saying that XML data type cannot be grouped. I know we can do it by user defined function. Can anyone please let me know how this task can be achieved. I need to have to group by clause in my code. I'm using SQL Server 2005/2008.

0 投票
1 回答
136 浏览

sql-server - sql xml 订单处理器

我想知道是否有人可以向我指出一个教程或给我关于处理 XML“请求报价”文档的建议。使用 SQL Server 2005。例如:

刚刚用 XQuery 弄湿了我的脚。我需要将此文档分解为单独的行项目,用数字标识每个项目,验证它们计算价格。还需要能够添加/编辑/删除任何一个。我可以看到如何将行放入表中,但看不到如何用序列号标识它们并将存储过程应用于它们。我需要能够随机处理任何请求,例如validate line 6, calc price for line 3 delete line 4,change line 2 to Yellow等。

我假设最好的方法是将整个文档存储为 XML 列并对其进行交易,而不是将单个行项目切碎并将其存储在关系表中?

任何建议、代码、网址等将不胜感激。

0 投票
1 回答
6640 浏览

sql-server - 如何在 SQL Server 中编写 xquery 以从表中的 XML 数据列中读取所有子节点?

我在 SQL Server 中有一个名为 [QueryResult] 的表,其中包含 Init 类型、XML 类型的列。

这是 Result 列数据的示例 XML。

我需要一个返回输出的查询,如下所示:

如果您不清楚这个问题,请告诉我?

0 投票
1 回答
2508 浏览

sql - 修改通过交叉应用标识的 XML 值

我遇到了一些存储在数据库 XML 列中的值的数据问题。我已将问题重现为以下示例:

设置脚本:

在 XML 部分中,不正确的条目是那些具有<flag>false</flag>并且<frac>0.5</frac>flag应该是true非零frac值的条目。

以下 SQL 标识需要更新的 XML 项节点:

我想进行更新以更正这些节点,但我看不到如何修改item由 a 标识的元素cross apply。我看到更新看起来像这样:

但是这不起作用:我收到错误“'修改'附近的语法不正确”。

可以通过这种方法完成吗?

我知道另一种方法是在 xml 列上进行字符串替换,但我不喜欢这样有点含糊(而且我不相信它不会破坏我的真实问题)

0 投票
3 回答
3955 浏览

sql-server - SQLXML - 搜索和查询节点元素?

我有一个这样的 XML 存储在 XML 数据类型列中(表中将有多个这样的行)-

如何根据节点元素过滤(使用 SQL SERVER 2008 R2) - 获取所有“Elem1”节点或获取所有“名称”节点或获取所有 TimeZone 节点?类似于使用 local-name() 函数?

编辑 -部分解决方案-

我得到了部分解决方案(请参阅下面约翰的回复,然后运行它) -

上面的查询返回 TABLE 中的所有节点元素。现在,我想说过滤特定元素并返回元素及其值或属性值。如何实现这一点(通过使用 WHERE 子句或任何其他过滤机制)?

0 投票
1 回答
261 浏览

sql-server-2008 - 如何在 SQL Server 2008 中将 XQuery 结果列表用作关系表?

我有一个带有 XML 列的表:

使用 XQuery,我可以提取所有的 x:

哪个返回

但是如何将它们提取为 SQL 表,每行一个 x?

更好的是,如何将它们提取为 SQL 表,包含 x 和 y 两列,以便我可以使用 SQL 处理它们?

谢谢!