首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MSSQL中找到去年的WTD(周至今)数据?

如何在MSSQL中找到去年的WTD(周至今)数据?
EN

Stack Overflow用户
提问于 2017-06-14 13:36:12
回答 1查看 227关注 0票数 0

所以我找到了TYWTD(今年到目前为止),我得到了今年的查询,但是我需要知道如何为去年的4-5-4日历日期编写一个查询。

如果我今天撤回报告,那么日期范围应该是下面的。

今年世界贸易署的日期范围应为6/11/17 - 6/13/17,去年的世界贸易署日期范围应为6/12/17 - 6/14/17。

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

谢谢!

代码语言:javascript
复制
                        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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-14 13:45:38

GetDate()中减去一年应该可以做到这一点。

代码语言:javascript
复制
dateadd(day, 1-datepart(dw, DateAdd(year,-1,getdate())), convert(date, DateAdd(year,-1,getdate())))

这就产生了2016-06-12

这是更新的脚本。又更新了.

代码语言:javascript
复制
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, DateAdd(year,-1,getdate())), convert(date, DateAdd(year,-1,getdate())))
                               AND dateadd(day, 8-datepart(dw, DateAdd(year,-1,getdate())), convert(date, DateAdd(year,-1,getdate())))
                        GROUP  BY te.StoreID) AS TYWTD
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44546414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档