按周结束日期的SQL Server查询月份

时间:2018-01-22 08:29:37

标签: sql sql-server date

我是SQL Server查询的新手。对不起基本问题。我按日期订购了数量,

在查询中,如何计算每个星期五的月份? (QTD的总和从月开始日期到每周星期五)

我附上了截图供参考:

[enter image description here

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码:

创建表#Temp(Mdate Date,Qty Int)

声明@S Date =' 01-Jan-2018',@ E Date =' 201-Jan-2018' ;使用Date1 如 ( 选择@S Mdate 全联盟 从Date1中选择Dateadd(Day,1,Mdate)Mdate Mdate< @E ) 插入#Temp 选择Mdate,CAST(((9 + 4) - 4)* RAND(CHECKSUM(NEWID()))+ 1 AS int)数量来自Date1

;与Cte 如 ( 选择Mdate,Qty,Sum(Qty)Over(按DATEADD排序(d,7 - datepart(工作日,dateadd(d,1,Mdate)),Mdate))Qty1, Dense_rank()Over(由DATEADD排序(d,7 - datepart(工作日,dateadd(d,1,Mdate)),Mdate))作为Id来自#Temp Mdate集团,数量 ) 选择Distinct DATEADD(d,7 - datepart(工作日,dateadd(d,1,Mdate)),Mdate)Mdate,Qty1 As Cty from Cte