每月计算的最后一天



>我有一个表格X,其中包含一个品牌每天的数据。每天的数据是累积的,即 3 的销售数据将包含 1、2 和 3 的数据。因此,每个月最后一天的数据将是该品牌和公司当月的销售额。我想在每个月的最后一天获取该品牌过去 3 个月(不包括当月(的所有销售额的总和。即 3 月:我希望每个品牌和公司的销售额从 2019 年 1 月 31 日 + 2019 年 2 月 28 日 + 2018 年 12 月 31 日开始。我怎样才能做到这一点?

如果你使用的是MSSQL,你可以使用EOMONTH函数,示例如下

DECLARE @date VARCHAR(255) = '2/24/2019';  
SELECT EOMONTH ( @date ) AS Result;  

对于MySQL,您可以使用LAST_DAY函数

SELECT LAST_DAY('2019-02-24');

假设表示销售日期的列的名称是"sales_date",那么以下谓词将为您提供感兴趣的日期:

sales_date in (
    dateadd(day, -1, dateadd(month, datediff(month, 0, getdate()) - 2, 0)),
    dateadd(day, -1, dateadd(month, datediff(month, 0, getdate()) - 1, 0)),
    dateadd(day, -1, dateadd(month, datediff(month, 0, getdate()), 0))
)

最新更新