问题标签 [array-agg]
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.
sql - 如何使用查询 array_agg 制作这个 sql?
我想查询
并且根据它的结果r
,我需要进行n
查询,n
长度在哪里 。例如:l
r
l => 2
然后:
l
好的,如果太大,您可以看到它的去向。选择太多,对数据库的访问太多。有没有更好的方法来实现这样的最终结果:
我听说过关于array_agg
postgres 的功能。也许这就是答案?无论如何,这些是我的表格描述:
并提前谢谢你:D
sql - 如何将两个 PostgreSQL 列聚合到一个用括号分隔的数组
我想使用 group-by 查询连接两列,从而生成一个用括号分隔的数组。我知道这个问题与这个问题有关,但像往常一样,我的用例有点不同。
一个简单的例子(也作为SQL Fiddle)。目前我的查询返回以下内容:
但是我想连接/聚合X
/Y
列以获得以下内容:
目前,我尝试将列连接为一个,如下所示:
返回:
并使用array_agg()
:
导致:
我觉得我越来越近了,但非常感谢您的帮助。
sql - SQL 数组聚合和连接
在我的 Postgres 数据库中,我有 3 个表。一换users
一换comments
,一换一映射二user_comment_map
。以下是表格的外观:
我正在尝试编写导致以下对象的 SQL 查询:
我尝试使用joins
,array_agg
但无法获取该格式的数据。任何帮助将非常感激。注意:我也在使用 knex 来构建查询,但我认为 knex 不能在不求助于的情况下处理这样的事情knex.raw
postgresql - 为什么 array_agg() 在 postgresql 中返回空数组?
我有一个名为 start 的整数类型列。我想通过该列的值创建一个数组。这似乎很简单,我使用了 array_agg(),但它给出了空数组作为输出。以下是我的列数据
以下是我用来制作数组的查询:
为什么它给出空数组?
postgresql - array_agg 在 postgres 9.4 中具有不同的作品,但在 postgres 9.6 中没有
我有一个使用带有 distinct 作为参数的 array_agg 的查询,并且在 postgres 9.6 上不被接受。
我创建了这个示例来说明这个问题:
postgres 9.4
postgres 9.6
为了在 postgres 9.6 上得到这个结果,我需要改变什么?
谢谢。
这就是我检查功能的结果:
现在,由于pozs的评论,我发现了这个问题。我删除了聚合函数的公共定义并且它起作用了。
问题出在我正在处理的数据库上,因为我发现有些人说该示例对他们有用,所以我创建了一个新数据库并运行该示例。然后唯一的变化是聚合函数定义。
sql - 在 dict 或 json 中分组表
我有两个具有 1:M 关系的表,我想将此关系分组为 dict 或 JSON。
我的数据类似于:(id,provider_code,provider)
我正在寻找的是这样的:
我不介意聚合是否为 JSON 格式,但我需要它易于解析。
我已经尝试过使用 postgres 函数 array_agg,但是虽然我已经解析为 varchar,但仍然出现错误:
这是我正在尝试的查询,但我知道这是参数的问题,我需要一种方法来传递 2 个参数,而不是只传递一个。
表定义: 属性表:
"id";"integer"
提供者表:
postgresql - 将返回的 SETOF 转换为 PL/PgSQL 中的数组(特别是)
我知道有 的过程SELECT array_agg(f) FROM (SELECT blah FROM stuff) f
,这在 SQL 中很棒,但是在 PL/pgSQL 中编写函数时,有没有简写方法?
我正在尝试将 JSON 键放入可用于查看长度的数组中。就像是...
v_len := array_length( array_agg(json_object_keys(myjson)), 1);
而不是 long, DECLARE a variable, do a SELECT array_agg(f) INTO ...
,我一直在做。我似乎有数百个使用相同的 SQL 字符串的实现,但我真的想减少我的代码,我的手指因所有多余的输入而麻木。
这种速记方法我缺少什么?
sql - POSTGRESQL - UNNEST 函数在 LINUX 中不起作用
我显示了重复的行。虽然我已经添加了'DISTINCT',但当我运行查询重复记录时显示。
这里有什么问题吗?
sql - 相当于 Oracle XE 11.2 中 PostgreSQL 的 array_agg
我有一个 Oracle 11g XE 数据库,我有一个查询结果集:
我想在同一行中获得所有相关类别的不同ID,以逗号分隔,如下所示
我之前使用过 Postgres 并在array_agg
那里帮助了我。如何在 Oracle 11g XE 中获得相同的结果?
sql - 尝试 ORDER BY 时间戳时,ARRAY_AGG 被 GROUP BY 中断
我为我的问题准备了一个SQL Fiddle -
给定下表:
填充以下测试数据:
我可以使用以下查询:
用于以“gid”作为键和数组值的 JSON 对象获取表记录:
但是我错过了一件小事,只是想不通:
我需要通过“创建”来订购数组。
所以我添加ORDER BY created ASC
到上面的查询中,也必须添加GROUP BY gid, created
(你可以看到上面查询中注释掉的有问题的代码)。
然而,这会破坏array_agg
并导致 1 元素数组(并覆盖重复的“gid”键,当jsonb
从我的自定义存储函数返回时):
甚至可以在这里订购还是我应该在我的 JAVA 应用程序中订购?