问题标签 [listagg]

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

sql - oracle listagg - 字符串连接的结果太长

我有一个我无法解决的问题。我有这样的声明:

我收到一个错误:

ORA-01489:字符串连接的结果太长 01489。 00000 - “字符串连接的结果太长” *原因:字符串连接的结果超过了最大大小。*行动:确保结果小于最大大小。

怎么解决?我试图这样做,但它没有帮助

0 投票
3 回答
10654 浏览

sql - 将 WM_CONCAT 转换为 Listagg

我的 DBA 正在将我的 oracle 数据库从 v10 升级到 v12。我有一些使用的旧 SP wm_concat,我需要将其更改为listagg. 有问题的代码是这样的:

预期结果是:在此处输入图像描述

我尝试更改它,但是当我尝试在“LISTAGG”一侧使用“ROW_NUMBER()”时出现问题。

我怎样才能解决这个问题?

0 投票
3 回答
2818 浏览

sql - 使用 Oracle LISTAGG 函数添加编号的项目符号

是否可以使用 Oracle 的 LISTAGG 函数添加编号的项目符号?

IE:

我有一张桌子:

SQL 语句:

*是一个编号的项目符号,应该产生 ff:

另外,可以用字母代替数字吗?

0 投票
1 回答
3222 浏览

sql - 连接4个表的数据时使用Listagg只获取一行

我在 4 个表中有数据,并希望在一行中有以下数据:table1.*,table2.*,table3.*,table4.*

我正在使用内部连接来做到这一点,但 table4 有 2 行具有相同的外键,所以我得到两行而不是一行。我想使用 Listagg 来解决这个问题并将两个记录合并为一个,但我不完全确定如何做到这一点。我只看到您选择特定列的示例,而不是 *.

0 投票
1 回答
2845 浏览

sql - Oracle 12 - 分组列列表中的 Blob 会破坏 listagg?

我们有一组表,我们需要从中创建一个视图……视图中有 30 多个列。一个(-最后一)列正在使用 listagg 从其中一个表中聚合多个值……另一列是另一个表中的 BLOB。

当我一次创建一列视图时,一切都很顺利。添加 listagg - 然后开始添加所有分组列..当我添加 BLOB 列时,返回错误不一致的数据类型..期待 - 得到 BLOB

所以,只是一个一般性问题,...在 listagg 列的分组列列表中有一个 BLOB 列会破坏整个事情吗?有没有办法只使用 SQL 来解决这个问题?

任何和所有的见解和建议表示赞赏。因为涉及多个表和许多列,我希望我能很好地解释情况以获得建议,而无需尝试构建整个案例以供审查。

0 投票
2 回答
710 浏览

stored-procedures - 我想通过在 oracle 中将输入变量和输出传递为 json 格式来创建存储过程?

我们需要在 Oracle 中创建一个存储过程,将输入变量和输出传递为 JSON 格式。我尝试使用listagg()但在执行过程时出现错误,因为“字符串连接的结果太长”。

该过程的预期输出必须是 JSON 格式。

0 投票
3 回答
50 浏览

sql - 我不能让 Oracle 中的 LISTAGG 做它应该做的事情吗?

我的数据看起来像:

我想要的是:

我在 Oracle 中使用这个 SQL:

我得到的是:

想法?

谢谢。本

0 投票
2 回答
585 浏览

sql - 串联太长

假设我有这张桌子:

我正在使用 listagg 像这样:

我遇到了错误:

经过研究,我发现使用 xmlagg 可以解决问题(链接),但后来意识到真正的问题在于 col1、col2 和 col3 的串联,因为它仅限于 4000 个字符,所以执行 xmlagg 仍然会返回相同的错误.

有没有人想出这个?还是没有解决方法?(链接

更新:

为了清楚起见,我更新了表格上的示例值(供 Kumar 先生理解),我的预期输出应该是这样的:

这显然行不通。

0 投票
2 回答
92 浏览

sql - 从链接的行中提取行族

我有一个类似于下表的链接事务表

A 列和 B 列下的数字代表事务 ID。因此,例如,事务 1 通过某些标准与事务 4 相关联,tran 3 与 tran 5,tran 4 与 tran 6 等等。

事务 2 和 7 不链接到任何其他事务,因此它们是自链接的。

我要从该表中提取事务系列 - 由于 tran 1 和 4 是链接的,tran 4 和 6 是链接的,tran 10 和 4 是链接的,等等它们属于一个事务系列 -(1,4,6,10, 12,15)。

我想创建具有最低交易 ID 的交易系列作为主交易。所以理想情况下,输出将如下所示

我一直在玩自我连接。

此代码给出以下输出

我不确定我的代码有什么问题。有人可以指出我正确的方向吗?谢谢!

0 投票
0 回答
91 浏览

sql - LISTAGG 在子查询中失败 (ORA-01489)

我在一个查询中成功地使用了 LISTAGG,但是我想把它带入一个更大的查询中。我在 FROM 中创建了一个子查询,并使用它来引用 LISTAGG 但是我得到了 ORA-01489,即使它不在子查询中时长度很好。我只是不明白为什么将 LISTAGG 放在子查询中会导致它突然突破 4000char 限制?

所以下面的工作本身就很好......

但是当我将它包含在我更大的 SQL 块中时,我得到了 ORA 错误。

任何人都可以提供一些建议吗?谢谢