问题标签 [string-aggregation]

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 投票
14 回答
366791 浏览

sql - 如何在 PostgreSQL 'group by' 查询中连接字符串字段的字符串?

我正在寻找一种通过查询连接组内字段字符串的方法。例如,我有一张桌子:

我想按 company_id 分组以获得类似:

在 mySQL 中有一个内置函数来做这个group_concat

0 投票
13 回答
184886 浏览

sql - 在 Microsoft SQL Server 2005 中模拟 group_concat MySQL 函数?

我正在尝试将基于 MySQL 的应用程序迁移到 Microsoft SQL Server 2005(不是选择,但这就是生活)。

在最初的应用程序中,我们几乎完全使用了符合 ANSI-SQL 的语句,但有一个明显的例外——我们group_concat相当频繁地使用 MySQL 的函数。

group_concat,顺便说一句,这样做:给定一张表,比如说,员工姓名和项目......

返回:

...这就是您使用 group_concat 得到的结果:

返回:

所以我想知道的是:是否可以在 SQL Server 中编写一个用户定义的函数来模拟group_concat?

我几乎没有使用 UDF、存储过程或类似的东西的经验,只是直接使用 SQL,所以请在解释过多的情况下犯错:)

0 投票
11 回答
450654 浏览

sql - 如何在 Oracle 中将多行组合成逗号分隔的列表?

我有一个简单的查询:

结果如下:

我想在一行中返回结果,所以像这样:

当然,我可以编写一个 PL/SQL 函数来完成这项工作(我已经在 Oracle 10g 中做过),但是对于这个任务有没有更好的,最好是非 Oracle 特定的解决方案(或者可能是一个内置函数) ?

我通常会使用它来避免子查询中的多行,因此如果一个人拥有多个公民身份,我不希望她/他在列表中重复。

我的问题基于SQL server 2005上的类似问题。

更新:我的函数如下所示:

0 投票
4 回答
37313 浏览

sql - Oracle:将子查询中的多个结果组合成一个逗号分隔值

我正在尝试将单列子查询转换为以命令分隔VARCHAR的类型的值列表。

这与此问题相同,但适用于 Oracle 而不是 SQL Server 或 MySQL。

0 投票
4 回答
297352 浏览

sql - 在不创建存储过程的情况下,如何在 Oracle 中将多行连接成一行?

如何在不创建存储过程的情况下在 oracle 中实现以下目标?

数据集:

期望的结果:

0 投票
2 回答
3457 浏览

oracle - Group_concat MySQL 函数在 Oracle 中的等价物

嗨,我正在寻找与 oracle 中 mysql 的 group_concat 相同的功能或某些功能

0 投票
11 回答
179641 浏览

sql - 如何使用 SQL 查询创建逗号分隔的列表?

我有 3 个表称为:

  • 应用程序(ID、名称)
  • 资源(id,名称)
  • 应用程序资源(id、app_id、resource_id)

我想在 GUI 上显示所有资源名称的表。在每一行的一个单元格中,我想列出该资源的所有应用程序(逗号分隔)。

所以问题是,在 SQL 中执行此操作的最佳方法是什么,因为我需要获取所有资源并且还需要获取每个资源的所有应用程序?

我是否首先运行 select * from resources 然后循环遍历每个资源并对每个资源执行单独的查询以获取该资源的应用程序列表?

有没有办法在一个查询中做到这一点?

0 投票
2 回答
9900 浏览

oracle - Oracle 功能:复制 wm_concat

我目前正在处理 Crystal Reports 中的一个项目,该项目拒绝使用 Oracle 10g 中允许的未记录函数 WM_CONCAT。这是WM_CONCAT头信息

要使用 WM_CONCAT,我将其传递给以下内容: WM_CONCAT(column1); 此函数似乎接受 varchar2 类型的列,并从该列返回以逗号分隔的值列表。我目前有这个功能的自定义版本(在我的工作计算机上),但它不是最佳的并且缺乏可重用性。任何人都可以提供像 WM_CONCAT 这样我可以使用的好的、可重复使用的函数吗?

0 投票
1 回答
769 浏览

oracle10g - 使用字符串聚合时创建物化视图的速度非常慢,有什么性能建议吗?

我有大量物化视图,其中一些只需几秒钟即可创建和刷新,而另一些可能需要我长达 40 分钟才能编译,如果 SQLDeveloper 在此之前没有崩溃的话。

我需要在我的查询中聚合一些字符串,并且我有以下功能

然后,在我的 MV 中,我使用了一个 select 语句,例如

这很棒,因为它给了我以下信息:

代替 :

似乎当我使用此STRAGG功能时,创建/刷新 MV 所需的时间急剧增加。是否有替代方法来实现以逗号分隔的值列表?我在整个 MV 中都使用它,所以它对我来说是一个非常必要的功能

谢谢

0 投票
5 回答
10071 浏览

sql - Oracle 10g 中的字符串聚合

如何使用 Oracle 10g SQL 聚合字符串(连接)?