我有一系列的销售交易。我想创建一个MySql查询,该查询将按日期对销售交易进行分组,但也有一个列显示最近的工作日上一年的销售额。
我知道我可以使用DATE_ADD来获取正确的日期。例如,以下公式将给我我想要的相对于2020年3月1日的日期:
DATE_ADD('2020-03-01', INTERVAL -52 WEEK)
以上返回2019年3月3日。但是我不知道如何像这样转换数据:
+-----------+---------+
|Date | Sales |
|-----------+---------+
|2020-03-01 | 45.00 |
|2020-03-01 | 1.23 |
|2020-03-01 | 30.00 |
|2020-03-01 | 5.75 |
|2020-03-01 | 25.63 |
.
.
.
.
|2019-03-03 | 3.50 |
|2019-03-03 | 76.89 |
|2019-03-03 | 1003.50 |
|2019-03-03 | 1.34 |
.
.
.
.
+-----------+---------+
插入这样的表:
+-----------+--------------+--------------+
|Date | Curr Sales | Last Yr Sales|
|-----------+--------------+--------------+
|2020-03-01 | 107.61 | 1085.23 |
+-----------+--------------+--------------+
一种选择是条件聚合:
这样可以为您提供最近365天的每日销售额以及上一年同一天的相应销售额。