gpt4 book ai didi

mysql - SQL:使用日期计算每天的总变化

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

我有下表:

Date        |  Store  |  Total
2018-05-02 ABC 56.98
2018-05-02 DEF 60.34
2018-05-02 XYZ 46.50
2018-05-03 ABC 80.43
2018-05-03 DEF 70.09
2018-05-03 XYZ 95.98
2018-05-04 ABC 43.52
2018-05-04 DEF 90.23
2018-05-04 XYZ 88.12

我正在尝试创建一个查询,该查询将输出上表,并带有一个名为 PrevTotal 的附加列,对于每个商店,该列将具有前一天的总计。我还想忽略输出表中具有第一个日期 (2018-05-02) 的所有条目(因为您无法获得第一天的先前总计)。例如。输出应该是:

Date        |   Code   |   Total   |   PrevTotal 
2018-05-03 ABC 80.43 56.98
2018-05-03 DEF 70.09 60.34
2018-05-03 XYZ 95.98 46.50
2018-05-04 ABC 43.52 80.43
2018-05-04 DEF 90.23 60.34
2018-05-04 XYZ 88.12 95.98

我不知道如何创建一个查询来帮助我做到这一点。任何见解表示赞赏。

最佳答案

这对我来说效果很好。

SELECT s2.*, s1.Total 
FROM Stores s1
LEFT JOIN Stores s2 on s1.Store = s2.Store
AND DATEDIFF(day, s2.Date, s1.Date) = -1

WHERE s2.Total IS NOT NULL
ORDER BY s1.Date, s1.Store

关于mysql - SQL:使用日期计算每天的总变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55414433/

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