问题标签 [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 投票
24 回答
324263 浏览

sql - Oracle中的LISTAGG返回不同的值

我正在尝试LISTAGG在 Oracle 中使用该功能。我只想获取该列的不同值。有没有一种方法可以在不创建函数或过程的情况下仅获取不同的值?

我需要选择 col1 和LISTAGGcol2 的(不考虑第 3 列)。当我这样做时,我会得到这样的结果LISTAGG[2,2,3,4,5]

我需要在这里删除重复的“2”;我只需要 col2 与 col1 的不同值。

0 投票
1 回答
7940 浏览

oracle - 如何将 SELECT LISTAGG 值插入 varchar 变量

我正在编写一个 Oracle 用户定义函数。如何将 listtagg 值 Pears、Oranges、Bananas、Apples 插入变量 products 并在函数中返回。

0 投票
0 回答
765 浏览

sql - 超过 4000 个字符的列上的 Oracle Pivot

如果 LISTAGG 大于 4000 个字符,是否可以使用上述示例?

Pivot 似乎不适用于 CLOB 列。我尝试使用带有 .getClobVAL() 的 XMLAGG。这给了我一个大于 4000 但不能旋转的列表。

0 投票
1 回答
623 浏览

oracle - Oracle:从 listagg 中的日期中提取年份

我有一个带有日期列的表,并希望获得一个具有不同年份的字符串:

从上表和使用listagg我想得到年份

但是当我运行以下查询时:

我收到以下错误

ORA-00904: "DATA": 无效标识符

知道我做错了什么吗?

0 投票
3 回答
4643 浏览

database - listagg 数据转换为可用格式?

这是我第一次使用 LISTAGG 函数,我很困惑。我可以很容易地选择数据,但是USERS列的字符之间都有空格,并且在尝试复制粘贴时,不会复制该列中的数据。我尝试过两种不同的 IDE。难道我做错了什么?

例子:

产量:

LISTAGG 结果

0 投票
1 回答
112 浏览

sql - 删除从 LISTAGG、Oracle SQL 构建的 Cell 中的冗余值

我对在 oracle 中查询非常陌生。我已经使用LISTAGG构建了一个 oracle 查询,如下所示:

返回:

我想做的是简化第二个字段并删除冗余值,以便我得到:

那可能吗?

0 投票
0 回答
162 浏览

oracle11g - Oracle listagg 查询

这是我的查询结果:

WEEKENDDATE CCNAME PHNAME RATIO 08-Feb-15 Apple Line 1 - Day L&I Work 0.45 08-Feb-15 Apple Line 1 - Day Sorter 6.85 08-Feb-15 Apple Line 1 - Day Tray Fill 12.93 08-Feb-15 Apple Line 1 - Day WH General Labor 5.6 08-Feb-15 Apple Line 1 - Day WH Supervisor 1.48 15-Feb-15 Apple Line 1 - Day L&I Work 0.42 15-Feb-15 Apple Line 1 - Day Sorter 6.09 15-Feb-15 Apple Line 1 - Day Tray Fill 11.9 15-Feb-15 Apple Line 1 - Day WH General Labor 5.42 15-Feb-15 Apple Line 1 - Day WH Supervisor 3.46 22-Feb-15 Apple Line 1 - Day L&I Work 0.43 22-Feb-15 Apple Line 1 - Day Sorter 6.01 22-Feb-15 Apple Line 1 - Day Tray Fill 12.09 22-Feb-15 Apple Line 1 - Day WH General Labor 4.9 22-Feb-15 Apple Line 1 - Day WH Supervisor 1.71

我的老板想要横向的数据。
有没有办法让我的查询结果格式如下:

CCNAME PHNAME 08-Feb-15 15-Feb-15 22-Feb-15 Apple Line 1 - Day L&I Work 0.45 0.42 0.43 Apple Line 1 - Day Sorter 6.85 6.09 6.01 Apple Line 1 - Day Tray Fill 12.93 11.9 12.09 Apple Line 1 - Day WH General Labor 5.6 5.42 4.9 Apple Line 1 - Day WH Supervisor 1.48 3.46 1.71

或像这样:

CCNAME PHNAME 08-FEB-15,15-FEB-15,22-FEB-15 Apple Line 1 - Day L&I Work .45,.42,.43 Apple Line 1 - Day Sorter 6.85,6.09,6.01 Apple Line 1 - Day Tray Fill 12.93,11.9,12.09 Apple Line 1 - Day WH General Labor 5.6,5.42,4.9 Apple Line 1 - Day WH Supervisor 1.48,3.46,1.71

这是我能够弄清楚的查询:
请注意,我事先不知道日期范围。
这取决于用户要求的周数。

但下面的结果还不够好:我可以使用“listagg”还是应该研究“pivot”?

CCNAME PHNAME RATIO Apple Line 1 - Day L&I Work 08-FEB-15,.45;15-FEB-15,.42;22-FEB-15,.43 Apple Line 1 - Day Sorter 08-FEB-15,6.85;15-FEB-15,6.09;22-FEB-15,6.01 Apple Line 1 - Day Tray Fill 08-FEB-15,12.93;15-FEB-15,11.9;22-FEB-15,12.09 Apple Line 1 - Day WH General Labor 08-FEB-15,5.6;15-FEB-15,5.42;22-FEB-15,4.9 Apple Line 1 - Day WH Supervisor 08-FEB-15,1.48;15-FEB-15,3.46;22-FEB-15,1.71

0 投票
2 回答
50239 浏览

sql - PostgreSQL 中的 LISTAGG(Oracle 数据库)的等价物是什么?

我必须用最新的 PostgreSQL 替换 Oracle 驱动程序。PostgreSQL 不知道函数 LISTAGG。我必须concat用逗号分隔值。LISTAGGPostgreSQL中的 Oracle 功能等价物是什么?

0 投票
1 回答
259 浏览

sql - 我想要在 Oracle 10g 中不使用大小写或解码的输出

输出应该是这样的:

0 投票
1 回答
687 浏览

sql - sql视图中的不同listagg

我有一张这样的桌子:

我希望以下列成为 sql developer 中现有视图的一部分:

我能够使用 listagg 生成表(id,名称),但我无法将其添加到视图中(最常见的错误是无效标识符)。

如果需要更多信息,请告诉我。

谢谢