Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MSSQL中查找去年的WTD(截至目前的一周)数据?_Sql_Sql Server_Sql Server 2008_Date - Fatal编程技术网

如何在MSSQL中查找去年的WTD(截至目前的一周)数据?

如何在MSSQL中查找去年的WTD(截至目前的一周)数据?,sql,sql-server,sql-server-2008,date,Sql,Sql Server,Sql Server 2008,Date,这是我找到的今年迄今为止的一周 我得到了今年的查询,但我需要知道如何编写去年4-5-4日历日期的查询 如果我今天提取报告,那么日期范围应该如下 今年WTD日期范围应为2017年6月11日至2017年6月13日 去年WTD日期范围应为2017年6月12日至2017年6月14日 有人能给我提供去年WTD的建议吗 谢谢大家! SELECT MAX(te.StoreID) AS StoreID,

这是我找到的今年迄今为止的一周 我得到了今年的查询,但我需要知道如何编写去年4-5-4日历日期的查询

如果我今天提取报告,那么日期范围应该如下

今年WTD日期范围应为2017年6月11日至2017年6月13日 去年WTD日期范围应为2017年6月12日至2017年6月14日

有人能给我提供去年WTD的建议吗

谢谢大家!

                        SELECT MAX(te.StoreID) AS StoreID, 
                               SUM(te.Price * te.Quantity) AS Sales, 
                               SUM(te.Cost * te.Quantity) AS Cost,  
                               COUNT(DISTINCT t.TransactionNumber) AS Trxn,
                               SUM(te.Quantity) AS Quantity 
                        FROM   TransactionEntry te 
                               INNER JOIN [Transaction] t 
                                       ON te.TransactionNumber = t.TransactionNumber 
                                          AND te.StoreID = t.StoreID 
                               LEFT JOIN item i 
                                      ON te.itemID = i.ID 
                               LEFT JOIN Department d 
                                      ON i.DepartmentID = d.ID 
                        WHERE  d.ID <> 8 
                               AND CONVERT(date, t.Time) >= dateadd(day, 1-datepart(dw, getdate()), convert(date, getdate()))
                               AND CONVERT(date, t.Time) <= dateadd(day, 8-datepart(dw, getdate()), convert(date, getdate()))
                        GROUP  BY te.StoreID) AS TYWTD
从GetDate中减去一年就可以了

dateadd(day, 1-datepart(dw, DateAdd(year,-1,getdate())), convert(date, DateAdd(year,-1,getdate())))
这将产生2016-06-12

这是更新后的脚本。 再次更新

从GetDate中减去一年就可以了

dateadd(day, 1-datepart(dw, DateAdd(year,-1,getdate())), convert(date, DateAdd(year,-1,getdate())))
这将产生2016-06-12

这是更新后的脚本。 再次更新


向您的数据库中添加日期是简化此类查询的好方法。您不是说去年WTD的日期范围应该是6/12/16-6/14/16吗?糟糕!是的,你是对的!LYWTD应该是6/12/16-6/14/16!向您的数据库中添加日期是简化此类查询的好方法。您不是说去年WTD的日期范围应该是6/12/16-6/14/16吗?糟糕!是的,你是对的!LYWTD应该是6/12/16-6/14/16!数据已验证且有效!!!!我确实更新了第二部分,它工作了!!!再次感谢大家!!!!数据已验证且有效!!!!我确实更新了第二部分,它工作了!!!再次感谢大家!!!!