gpt4 book ai didi

mysql获取运行差异

转载 作者:太空宇宙 更新时间:2023-11-03 10:37:19 25 4
gpt4 key购买 nike

我有以下表结构和数据:

-----------------------------
| Date | Accu. Output |
-----------------------------
| 2017-01-01 | 150 |
| 2017-01-02 | 165 |
| 2017-01-03 | 182 |
| 2017-01-04 | 190 |
| 2017-01-05 | 210 |
-----------------------------

我需要从上面的数据集生成下面的输出。我可以做客户端处理。但我正在尝试编写一个查询来获取它。

----------------------------------------------
| Date | Accu. Output | Daily Output |
----------------------------------------------
| 2017-01-05 | 210 | 20 |
| 2017-01-04 | 190 | 8 |
| 2017-01-03 | 182 | 17 |
| 2017-01-02 | 165 | 15 |
| 2017-01-01 | 150 | 0 |
----------------------------------------------

每日产量是当前 Accu 之间的差异。输出和前一天的 Accu。输出。

谢谢

最佳答案

这是一个使用左连接的方法:

select t.*,
coalesce(t.accu_output - tprev.accu_output, 0) as diff
from t left join
t tprev
on tprev.date = t.date - interval 1 day;

这假设 - 正如在您的示例数据中一样 - 天数在没有间隙地增加并且每天正好有一个值。您的问题(前一天的输出)暗示了这些条件。

关于mysql获取运行差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45782059/

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