gpt4 book ai didi

sql - 使用 groupby 聚合,但在聚合列上具有不同的条件

转载 作者:行者123 更新时间:2023-11-29 11:50:14 25 4
gpt4 key购买 nike

<分区>

我遇到过这样的问题。有一个表 A,我想使用 `group by x order by diff(即 abs(x-y))递增地聚合它

x 和 y 总是递增的。当两个不同的 x 可以与相同的 y 配对时,具有较小值的 x 具有优先权

    x     y     diff
1 2 1
1 4 3
1 6 5
3 2 1
3 4 1
3 6 3
4.5 2 3.5
4.5 4 0.5
4.5 6 1.5

我想要的聚合函数是:

取每组中与x(smallest diff value)差异最小的y。

但被取走的 y 不能被重用。(例如 y=2 将被带入 (x=1) 组,因此不能在 (x=3) 组中被重用)

预期结果:

    x     y     diff
1 2 1
3 4 1
4.5 4 0.5

在纯 SQL 中似乎非常棘手。我正在使用 PostgreSQL。真实的数据会很多比这个创意拍摄示例复杂且更长

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