gpt4 book ai didi

sql - 如何通过传递条件来总结行值

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

我想通过总和限制来总结列(价格)。
例如,我有下表,我想将记录限制为 10k 或 15k。

ID      PRICE
x1 10,000
x2 20,000
x3 5,000
x4 7,500.00

我想要的结果应该是

<=10000

ID      PRICE
x1 10,000

<=15000

ID      PRICE
x1 10,000
x3 5,000

<=14000

ID      PRICE
x3 5,000
x4 7,500.00

我做了一些搜索。我在 postgresql 中找到了一些窗口函数,即 OVER 函数。所以我写了下面的查询

WITH cte AS (
SELECT *, sum(price) OVER (order BY id) AS total
FROM test1
)
SELECT *
FROM cte
WHERE total <= amount

但是条件 <=15,000 和 <=14000 没有带来正确的结果。

我想总结价格列并获取与我们给定金额或条件相匹配的总和结果的记录,更具体地说,它应该通过验证和返回任何其他记录来返回记录可以容纳我们传递的金额

请帮助我。

谢谢

最佳答案

您的问题不清楚,但如果您愿意,可以对价格列进行排序,以便获得小于等于限制的最小总和。尝试按价格排序:

WITH cte AS (
SELECT *, sum(price) OVER (order BY price) AS total
FROM test1
)
SELECT *
FROM cte
WHERE total <= amount

关于sql - 如何通过传递条件来总结行值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53924612/

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