gpt4 book ai didi

获取所有行直到 SUM(列)大于 X 的 MySQL 查询

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

我有以下数据

user_id   days   date
88 2 2013-08-25
88 4 2013-08-23
88 18 2013-08-5
88 1 2013-08-4
88 2 2013-08-2
73 11 2013-08-2
299 4 2013-08-2
12 983 2013-08-2

我正在尝试获取特定 user_id 的所有最近行(按 DATE desc 排序),直到 days 列的总和大于 X 。例如,在这种情况下,如果 X=7,我将获得 SUM(days)=24 的前三行。

最佳答案

试试这个。在这里,您将使用一个局部变量来计算子查询中的总和。

select
user_id,
days,
date
from
(
select
user_id,
days,
date,
@sum_days := @sum_days + days as sum_days
from
myTable
order by
date desc
) t
cross join (select @sum_days := 0) const -- resetting your @sum_days var.
where
sum_days < X -- fill a number in for X here.

关于获取所有行直到 SUM(列)大于 X 的 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18445333/

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