我是SQL Server查询的新手。对不起基本问题。我按日期订购了数量,
在查询中,如何计算每个星期五的月份? (QTD的总和从月开始日期到每周星期五)
我附上了截图供参考:
[
感谢您的帮助
答案 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