gpt4 book ai didi

sql - 在 Postgresql 中选择正聚合值并忽略负值

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

我必须应用某种转换 fn(argument)。这里 argument 等于 value,但不是负数。当您获得第一个负 value 时,您将“等待”直到它与连续值相加并且此和变为正数。然后你做fn(argument)。查看我要获取的表:

value      argument ---------------------  2           2        3           3       -10          0        4           0  3           0  10          7  1           1

我可以对所有值求和并将 fn 应用于总和,但是 fn 对于不同的行可能不同,并且必须知道行号才能选择具体的fn。

想要一个 Postgres SQL 解决方案,看起来窗口函数很合适,但我还没有足够的经验来编写执行此操作的表达式。事实上,不幸的是,我是“thinking in sql”的新手。我想这可以通过命令式方式轻松完成,但我还不想编写存储过程。

最佳答案

我想我迟到了,但这可能对某人有帮助:

select
value,
greatest(0, value) as argument
from your_table;

关于sql - 在 Postgresql 中选择正聚合值并忽略负值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7049647/

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