gpt4 book ai didi

sql - 如何选择总和达到总数的 60% 的值

转载 作者:行者123 更新时间:2023-12-04 20:35:49 26 4
gpt4 key购买 nike

假设我有一张这样的表:

乙 3
光盘 1
EF 2
GH 4

最后一列的总和是 10,我想要最大的值,总和至少占总值的 60%。所以,在这种情况下,它会返回

GH 4
乙 3

它上升到 70%,但如果只选择了第一个值,它只会上升到 40%。即使可能有一个组合会正好返回 60%,我们还是想取最大的数字。

所以,我想我知道如何将值从大到小排序以及如何对所有值求和,但我不知道如何只取总和为 60% 的行。

最佳答案

--save the whole sum into a variable
summa = select sum(val) from sometable;

select *
from sometable o
where (
select sum(val)
from sometable i
where i.val <= o.val
) >= 0.6*summa;

关于sql - 如何选择总和达到总数的 60% 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5883442/

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