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

sql - 如何根据另一列 SQL 中的唯一值创建数组列

我有来自 postgres 表的数据,如下所示:

但我需要将其转换为以这种格式传递给前端视图:

对于Server列中的每个唯一值,我想从我的 SQL 查询中的所有其他列中创建一个数组列。到目前为止,我有这样的东西,但它似乎没有从列中创建一个数组Server(为清楚起见,排除了联系列):

如何根据 Server 列中的唯一条目正确创建数组列?

0 投票
1 回答
41 浏览

postgresql - 使用所有先前位置的 array_agg 查询表,不包括当前位置

我有一个数据库表:

如何有效地查询表,以便使用 array_agg() 获取新列。

我已经尝试过以下查询,但是它非常慢而且错误,因为它没有按名称列对 previous_positions 进行分组:

我希望表格输出看起来像这样

0 投票
1 回答
133 浏览

postgresql - 查询所有先前位置、LAST_10、LAST_50 的 array_agg/median 的表,不包括当前位置

这是我之前发布的这个出色回答的问题的变体:

我有一个数据库表:

如何有效地查询表,以便使用 array_agg() 获取新列。

我已经尝试过以下查询,但是它非常慢而且错误,因为它没有按名称列对 previous_positions 进行分组:

我希望表格输出看起来像这样

0 投票
1 回答
262 浏览

postgresql - Ecto 查询以获取满足 array_aggregator 中所有值的所有值,而不仅仅是任何值?

想知道是否有人可以帮助我解决数组聚合器问题

我有一个使用连接表进行连接的查询,然后它过滤掉给定数组中的所有值,并过滤掉另一个数组中的值。

代码如下所示:

看起来having_good_ingredients像这样:

这可行,但它会抓取满足 good_stacks 数组中任何值的所有值,我希望它们仅在所有堆栈都工作时才满足,即如果我的数组中有 [A, C]返回具有 A 和 C 的值,而不仅仅是 A 而不仅仅是 C。

有人有想法么?

0 投票
0 回答
181 浏览

java - 以有效的方式将postgres数据库数据转换为Json

  1. 我的要求是获取多个表数据(超过 200K 行)并转换为 Json 并返回。

  2. 我可以通过两种方式实现上述目标(如果有其他方法请建议我)

    一个。在查询本身中将 DB 数据转换为 Json(array_to_json(array_agg() 或 json_agg())) b. 获取 DB 数据并使用 rowmapper 等转换为 Java 对象列表,然后将 Java 对象列表转换为 json。

  3. 我的观察与这两种方式有关,

    一个。在查询本身中将 DB 数据转换为 Json(array_to_json(array_agg() 或 json_agg()):

    b.获取数据库数据并使用rowmapper等转换为Java对象列表,然后将Java对象列表转换为json:

    /li>

数据库:Postgres

询问:

SELECT array_to_json(array_agg(dev_info)) FROM (select * from device_instance_global join device_active_global on device_instance_global.device_id=device_active_global.device_id join dev_management on device_active_global.system_id=dev_management.node_id join device_model on device_active_global.device_code=device_model.device_code and device_instance_global.device_error_class=device_model .device_severity
where dev_management.node_type<>'F' order by device_instance_global.device_raise_time DESC ) dev_info;


从device_instance_global 选择 * dev_management.node_type<>'F' order by device_instance_global.device_raise_time DESC ) dev_info;

请建议我有什么最好的方法来满足我的要求。

0 投票
2 回答
982 浏览

sql - PostgreSQL group_concat 行作为 json

我有一个查询,mysql想在PostgreSql.

这是查询:

这将得到输出:

我正在尝试与PostgreSql.

这就是我卡住的地方:

我不知道如何继续前进。

此外,表格:

楷模:

类别:

0 投票
0 回答
29 浏览

u-sql - When using ARRAY_AGG it removes my record

I am trying to use Array_agg to help combine some records, but it seems to be removing the record when I try to use it. The format of what I have written is below. All the records which are individual stay.

0 投票
2 回答
4700 浏览

struct - 如何从标准 SQL 中的数组结构返回结构数组?

我的表上有一个不重复的记录列,我想访问它。在这个记录上,有几个重复的值。

所以它是一个RECORD,就像这样:

例如。数据可能代表:

所以我想把它作为一个更好的数据结构返回,一个结构数组:

我试过了:

但它导致

这不是我期望它返回的结果。

是否可以在这里巧妙地使用标准 SQL从STRUCT多个ARRAY变为ARRAY多个?STRUCT

0 投票
1 回答
1602 浏览

json - postgres array_agg 与 json_build_object 不同

table3 也是一对多的关系,结果是 array_agg 中的状态重复,我尝试使用 array_agg(distinct json_build_object()) 和 array_agg(distinct on json_build_object()),在这种情况下我们如何防止重复?

0 投票
2 回答
69 浏览

postgresql - 在时间间隔内测试日期的正确程度

我有一个用户操作的时间戳。以及用户有权执行操作的几个时间间隔。我需要检查此操作的时间戳是否在至少一个时间间隔内。

用户表:

赠款表:

查询:

结果:

时间戳“01.02.2018 15:05:06”在“01.01.2018 00:00:01, 01.03.2018 00:00:00”范围内,因此“Bob”有执行操作的授权,并且应该是“是”在第一行,而不是“否”。

预期的输出是这样的:

我试着这样测试:

结果是“假的”。但是如果删除 array_agg 函数

它工作正常 - 结果是“真实的”。为什么?array_agg 有什么问题?

我必须使用 array_agg 因为我有几个时间间隔要比较。

我必须制作“假”时间间隔

来自一个时间戳,因为运算符 @> 不允许比较时间戳和时间戳间隔数组。如何比较一个日期是否在时间间隔数组的至少一个时间间隔内?