【发布时间】:2016-04-07 12:53:43
【问题描述】:
我对 MSSQL 有点生疏,但我正在尝试编写一个查询以显示 30 天的库存变动。
简而言之,我使用不同的 datediff 参数运行了几次以下查询
SELECT * FROM InvMovements
Where EntryDate between DATEADD(day,datediff(DAY,0,GETDATE()) -30,0)
and
DATEADD(day,datediff(day,0,getdate()) - 0)
Order by EntryDate DESC
和
SELECT * FROM InvMovements
Where EntryDate between DATEADD(day,datediff(DAY,0,GETDATE()) - 60,0)
and
DATEADD(day,datediff(day,0,getdate()) -31,0)
Order by EntryDate DESC
我想达到的目的,即使它使用 SSRS 也是按单个查询分组的,因此结果集在其分组之下 30 60 90
不确定这在普通查询中是否可行,或者我是否需要使用 SSRS 和列单独查询。
感谢任何帮助
【问题讨论】:
-
不确定你在问什么。请提供一个例子,例如作为SQL Fiddle。
-
SELECT * FROM InvMovements Where EntryDate 在 DATEADD(day,datediff(DAY,0,GETDATE()) - 30,0) 和 DATEADD(day,datediff(day,0,getdate()) 之间, 0) 按 EntryDate DESC SELECT * FROM InvMovements 排序,其中 EntryDate 在 DATEADD(day,datediff(DAY,0,GETDATE()) - 60,0) 和 DATEADD(day,datediff(day,0,getdate()) -31 之间, 0) Order by EntryDate DESC InvMovements 表将有一个 StockCode、Price 和 Date 完美结果将是 0-30 31-60 61-90 StockCode、Price、Date StockCode、Price、Date StockCode、Price、Date StockCode、Price、Date StockCode , 价格, 日期股票代码, 价格, 日期
标签: sql-server sql-server-2008 reporting-services ssrs-2008