gpt4 book ai didi

postgresql - 合并postgres中的字段聚合

转载 作者:行者123 更新时间:2023-11-29 12:17:32 24 4
gpt4 key购买 nike

我正在尝试按 name 字段进行分组,但使用行可能具有的其他值的“合并聚合”。这是数据:

name        | jurisdiction    | db_from
------------|-----------------|----------------
my station NULL 2017-06-21 8:01
my station my jurisdiction 2017-06-21 8:00
my station old data 2017-06-21 7:59

我想结束:

name        | jurisdiction    
------------|-----------------
my station my jurisdiction

这是我想出的:

WITH _stations AS (
SELECT * FROM config.stations x ORDER BY x.db_from DESC
)SELECT
x."name",
(array_remove(array_agg(x.jurisdiction), NULL))[1] as jurisdiction
FROM _stations x
GROUP BY
x."name";

jurisdiction 字段的某些值可能为空,我正在尝试取最近的非空值。

我知道我不应该依赖 CTE 的命令,但它现在似乎还有效。

最佳答案

我花了一点时间才找到这个,所以我希望它能有所帮助。如果这不是解决问题的最佳方法,请告诉我:

SELECT 
x."name",
(array_remove(array_agg(x.jurisdiction ORDER BY x.db_from DESC), NULL))[1] as jurisdiction
FROM config.stations x
GROUP BY x."name"

关于postgresql - 合并postgres中的字段聚合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44680699/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com