问题标签 [for-xml-path]

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 回答
15004 浏览

sql - 如何在 sql 中使用 FOR XML PATH 将行合并为单列?

我想使用in将行合并到单列FOR XML PATHSQL

这是我的查询:

在这里,我得到两行,即来自的两个设备名称tbl_Sales_Order

现在这些行我想在单行中使用FOR XML PATH到单列中。

进一步应用后FOR XML PATH,我想在select query我想使用它的行值中使用它,如下所示。

输出要求:

0 投票
1 回答
74 浏览

sql - 用于xml子句的sql server

我有以下格式的数据:

我想获得以下格式的格式化 XML

我尝试了以下选择查询:

但它没有提供所需的输出。有人可以让我知道我错过了什么吗?

当前输出:

0 投票
1 回答
1549 浏览

sql-server - 我正在尝试加入三个表并将 2 个不同的列连接成多行

我正在尝试连接三个表并将 2 个不同的列连接成多行。当我运行具有多个文件名和多个电话号码的常规查询时,我有四列数据。我想摆脱查询导致的重复项。

我希望不将 id 与不同的文件名重复连接到另一列中,以便 id 用逗号分隔。将所有电话号码与相应的 id 连接成一行并用逗号分隔的情况也是如此。

我发现了一些使用 xml 路径的示例,但它们只有两个表和两列。

下面我有三个表,我到目前为止的查询,以及我希望有的查询。有谁知道在加入表格时如何做嵌套的 xml 路径?

Table: IPMFILE
ID FILENAME
10000.000 10000_45109.doc
10001.000 10001_45115.docx
10002.000 10002_47752.doc
10002.000 10002_45119.doc
10003.000 10003_45123.doc
10004.000 10004_45128.docx
10004.000 10004_45183.docx

表:人员
ID CITY
10000.000 Elkins Park
10001.000 4504 St. James Drive Plano
10002.000 Fort Collins
10003.000 Bound Brook
10004.000 Downers Grove

表:电话
ID 电话
10000.000 215-7177179
10001.000 972-6187143
10002.000 970-4439376
10003.000 家 732-3693106
10004.000 C 630-4648539
60048539 1000481603-



Result of Query
ID FILENAME phone CITY
10000.000 10000_45109.doc 215-7177179 Elkins Park
10001.000 10001_45115.docx 972-6187143 4504 St. James Drive Plano
10002.000 10002_47752.doc, 970-4439376 Fort Collins
10002.000 10002_45119.doc 970-4439376 Fort Collins
10003.000 10003_45123 .doc 主页 732-3693106 Bound Brook
10004.000 10004_45128.docx C 630-4648539 Downers Grove
10004.000 10004_45183.docx C 630-4648539 Downers Grove
10004.000 10004_45128.docx H 630-9681673 Downers Grove
10004.000 10004_45183.docx H 630-9681673 Downers Grove

Desired Query with Filename Concatenated for each id and Phone number concatenated for each id and duplicates removed
ID FILENAME phone CITY
10000.000 10000_45109.doc 215-7177179 Elkins Park
10001.000 10001_45115.docx 972-6187143 4504 St. James Drive Plano
10002.000 10002_47752.doc, 10002_45119 .doc 970-4439376 Fort Collins
10003.000 10003_45123.doc Home 732-3693106 Bound Brook
10004.000 10004_45128.docx, 10004_45183.docxC 630-4648539,H 630-9681673 Downers Grove

我在另一篇文章中找到了这个:

0 投票
1 回答
71 浏览

sql - 如何选择xml数据中的所有父节点

我想在所有父节点中进行选择,而我不知道存在多少个节点?

0 投票
1 回答
231 浏览

sql - SQL Server - 查询 XML 数据类型

我在将数据收集到 SQL Server 表中的同时导入了几个 XML 文件。

我需要查询此 XML 数据列以将单个 XML 列转换为更结构化的表。

有人可以帮助这里的语法吗,XML 结构有一个模式,因此一旦以 SQL XML.query 格式理解,它应该很容易重复我想要的所有元素。

以上只是为我尝试的每个模式返回一个空字符串。

我需要提取每个 obj [] 元素的名称和值。

XML 结构示例,即 objs 标头后跟 obj 节点 0 到“x”节点。

0 投票
2 回答
84 浏览

sql-server-2008 - 更改单元格的值,然后连接成一行 SQL Server 2008

所以我试图一次做几件事,我不知道如何把它们放在一起。

我的第一步是获取多个单元格并根据 id 将它们组合成一行。

这很好用并产生如下内容:

但我想要这样的东西:

我通过 case 语句定义了新值:

这两个查询单独工作,但我如何将它们组合成一个查询?

0 投票
2 回答
5752 浏览

xml - 如何使用 xml 路径查询结果防止 sqlcmd 截断

在阅读了一个答案第二个答案以及sqlcmd 上的信息页后,我仍然无法使以下工作。

我正在尝试使用批处理文件中的 sqlcmd 将结果查询到 xml 文件中。

批处理文件如下所示:

简化的 sql 查询是:

输出是一个大约 1025Kb 的 xml 文件,带有一个截断的字符串。我认为它会截断为 1mb,但你怎么能防止这种情况呢?目标是将完整的查询结果放入 xml 文件中。据我所知,所有选项都已使用。顺便使用TSQL SSMS2008。

0 投票
0 回答
1486 浏览

sql-server - 在使用 xml 路径的节点后添加回车

创建xml路径的每个节点后如何添加回车符?我尝试了许多不同的尝试,但每次都失败了。

示例查询:

我得到了一些接近我正在寻找的结果,但还没有任何结果。

示例查询:

上面的查询返回:

我想看到的:

老实说,下面的结果也是可以接受的。

有任何想法吗?

先感谢您!

0 投票
1 回答
1641 浏览

sql - Sql FOR XML PATH 在“PATH”附近返回不正确的语法

这看起来应该很简单,但我看不出有什么问题。

此查询返回此数据。

当我尝试使用 FOR XML 时,这些工作:

但这会返回一个错误

'PATH' 附近的语法不正确

我不知道为什么。

我错过了什么?

0 投票
2 回答
4789 浏览

sql - SQL Server : nesting elements with FOR XML PATH

I want to nest each of my XML elements.

Take the following example:

Which will return the following XML:

Which is not the way I want the XML to be formatted. Rather I want each <Row> element to be wrapped with a <ParentRow> element like below:

Any help with this guys?