Sql 上月至今
我正在计算上个月到目前为止的销售量 我创建了截至目前的月份,如下所示:Sql 上月至今,sql,Sql,我正在计算上个月到目前为止的销售量 我创建了截至目前的月份,如下所示: sum(case when year(s.bus_dat) = year(getdate()) and month(s.bus_dat) = month(getdate()) then qty_sold end) as MTD_SAL, 我需要以类似的方式创建上个月至今的日期(我希望代码表示从上个月初到今天的日期,因此如果今天是10/28/2018,我需要显示从09/01/2018到10/28/2018 有什么建议吗?计
sum(case when year(s.bus_dat) = year(getdate()) and month(s.bus_dat) = month(getdate())
then qty_sold end) as MTD_SAL,
我需要以类似的方式创建上个月至今的日期(我希望代码表示从上个月初到今天的日期,因此如果今天是10/28/2018
,我需要显示从09/01/2018
到10/28/2018
有什么建议吗?计算一个月的第一天,然后使用以下公式返回一个月:
dateadd(m,-1,dateadd(d,-day(getdate())+1,getdate()))
需要确保它是一天的开始,因此转换为日期:
convert(date,dateadd(m,-1,dateadd(d,-day(getdate())+1,getdate())))
因此,您的完整列变成:
sum(case when s.bus_dat>=
convert(date,dateadd(m,-1,dateadd(d,-day(getdate())+1,getdate()))))
then qty_sold else 0 end) as LM
要在上个月到今天之间获得一些东西,您可以使用:
BETWEEN DATE(CONCAT(YEAR(NOW()),'-',MONTH(NOW()),'-01')) - INTERVAL 1 MONTH AND DATE()
你能想出如何格式化你的代码吗?你所有的问题似乎到处都有
在这里输入代码
。你应该用你的代码替换占位符文本,这样你的代码就可以用固定的字体很好地格式化了。太好了,谢谢@bahagerges。请记住接受答案以结束问题。