问题标签 [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.

0 投票
2 回答
175 浏览

sql - PostgreSQL 中的嵌套聚合函数

我正在尝试为每个返回每个author_id,author_nameAVG(total)per 。我正在尝试将,和合并到数组中。我知道此查询将返回每个数组,但这很好。authorarticle_groupauthor_idauthor_nameAVG(total)article_group

我最初尝试将AVG(total)(而不是avg_total)放入我的array_agg(). 这导致了一条错误消息,指出我不能嵌套聚合函数

我一直试图找出解决方法,但似乎无法解决。WHERE我尝试在子句中放置一个子查询AS avg_total,但没有奏效。

所以现在我尝试将AS avg_total别名放在子句之前的独立子查询中 FROM,但它仍然无法正常工作。

这是查询:

这是当前的错误消息:

这是我的表:

0 投票
1 回答
29 浏览

postgresql - 如何在 PostgreSQL 中返回表记录数组

尝试返回 type 的元素数组时出现类型不匹配错误,这是我声明table1的固有类型。table1

这是一个过度简化的代码,它重现了我的问题。

很明显,解析器期望array_agg函数中有其他表达式。我试过了 tt.**。他们都失败了。

我希望有一种语法,因为 PostgreSQL 12 文档声明“array_agg(expression)|any non-array type”。

任何的想法?

0 投票
1 回答
127 浏览

sql - Array_agg 函数

我有多个列要聚合到一个新列中。我想将它们连接到一个数组中,并在它们之间用“,”分隔符。你能告诉我一些编写查询的进步吗。我的例子我希望工作简单快捷:

0 投票
0 回答
135 浏览

django - Django 查询 用作表达式的子查询返回多行

我有一个非常简单的查询,我需要添加一个字段来获得按利益分组的平均价格 - 我尝试过ArrayAgg但没有工作。

用作表达式的子查询返回的不止一行

与这个模型的关系很大,所以这就是为什么我只想在注释中使用普通的新查询,而不是遍历所有模型之间的关系。

关于如何解决这个问题的任何想法?我不确定这种方式是否好用ArrayAgg

0 投票
1 回答
631 浏览

arrays - 计算 array_agg 中的值

考虑以下数据:

有没有一种方法可以在不使用子查询的情况下计算下面数组中分组的每个“颜色”?(例如,对于“y”,我会使用“yellow:1”、“red:2”)

就像是:

示例代码:

0 投票
0 回答
383 浏览

java - JPA 中的 PostgreSQL 函数 array_agg

在 PostgreSQL 中,array_agg(列)允许聚合。我尝试将它与 JPA 一起使用。

我在这里设置参数

甚至我已经在 PostgresSqlDialect 中注册了函数

我收到了这个异常

我想要的只是将所有 IDS 归为一组。

我正在尝试通过 HQL 来完成。

0 投票
1 回答
125 浏览

sql - postgres sql窗口函数-尝试根据日期和employee_id合并array_agg

我目前正在使用 postgres,并且有这个 sql 窗口函数用于根据日期生成员工签入和签出时间。但它有缺陷。

这会产生这个结果

生成此数据

我正在尝试生成这种方式,其中 time_in 和 time_out 基于 created_at (日期)和 employee_id 进行合并。这个想法是针对每个日期,我会知道员工的入住和退房时间。警告:如果数组中有记录,则不应出现 {NULL}。

试图生成这些数据

我试图操作的数据的视图和字段

https://docs.google.com/spreadsheets/d/1hn3w0mnezrV6_f-fPAKPZHuqdDjBBc_ArcgeBmgblq4/edit?usp=sharing

如何修改上面的 windows 函数 sql 视图,以便根据 created_at (date) 和 employee_id 合并 time_in 和 time_out?(最后一个屏幕截图是所需的输出)警告:如果数组中有记录,则不应出现 {NULL}。

更新(非常接近的答案,但还没有完全解决):

它产生这个:

差不多好了

设法通过 unnest 连接数组。但请注意 NULL 仍然存在。如何删除 NULL(但如果什么都没有,NULL 应该在那里)?或者一些有意义和可能的事情。

0 投票
1 回答
406 浏览

postgresql - Postgres GROUP BY 一个数组列

我有一份学生和家长的名单,并希望使用学生证将他们分组。拥有共同学生证的父母可以被视为一个家庭,而拥有共同父母证的学生也可以被视为一个家庭。这是一个示例表:

我想最终得到类似的东西:

为了实现这一点,我目前正在使用:

但我得到一个错误:ERROR: cannot accumulate arrays of different dimensionalitySQL state: 2202E

我怎样才能达到预期的结果?上述语句的内部查询返回:

现在将这些学生归为父母是我的难题。

0 投票
1 回答
251 浏览

php - Array_agg() 在选择时被强制转换为字符串

如何在 PHP 上强制输入 db:select(db::raw($query)) 类型?

我有一个非常复杂的查询,我从中获取数据,为此我使用DB::raw($query).

array_agg()在 2 列中使用 postgreSQL 函数。

SQL 示例:

使用 PGAdmin 的 SQL 的结果是:

那就是当我这样做的时候:

正如预期的那样$value,是一个对象数组。

也就是说属性 b 和 c 不是整数数组,而是字符串。

dd($value) 看起来像:

有没有办法将“b”和“c”的值作为数组或 null?

数组 ($value) 中有很多元素可以循环通过它进行强制转换。

OBS:我正在使用 php7.4.9

0 投票
2 回答
120 浏览

json - 如何从多个值中反对 row_to_json 和 array_agg

我设法创建了一个 jsonb 输出,但是我需要将其作为对象

我当前的代码

输出是

[{"resultid": "AST", "resultvalue": "22.657989"}]

我预计输出是这样的

[{"resultid": "AST", "resultvalue": "22.657989"},{"resultid": "ALP", "resultvalue": "107.636995"},{"resultid": "TP", "resultvalue": "85.245151"]

我尝试循环选择语句,但仍然没有解决方案。