【发布时间】:2017-07-05 08:27:03
【问题描述】:
我正在尝试获取上次更新日期早于当前日期减去 x 个月的数据列表。
例如,这里是一个示例表:
| DataGUID | UpdateDate |
|------------|---------------|
| AAA | 12-05-2017 |
| BBB | 22-06-2017 |
| AAA | 14-02-2017 |
| BBB | 16-05-2017 |
目前,我有一个类似于以下的 SQL 请求:
SELECT
DataGUID,
MAX(UpdateDate)
FROM
Table
GROUP BY
DataGUID
HAVING
MAX(UpdateDate) <= DATEADD(mm, CAST('-'+@LastUpdatedXMonthAgo AS INT), GETDATE())
ORDER BY
MAX(UpdateDate) DESC;
预期结果如下(@LastUpdatedXMonthAgo = 1,当前日期为 13-07-2017):
| DataGUID | UpdateDate |
|------------|---------------|
| AAA | 12-05-2017 |
它适用于 SSMS,但 SSRS 似乎忽略了“有”子句,并给了我这个结果:
| DataGUID | UpdateDate |
|------------|---------------|
| BBB | 22-06-2017 |
| AAA | 12-05-2017 |
似乎 SSRS 只是忽略了“have”子句,有没有办法让它在不使用 SSRS 过滤器的情况下工作?
【问题讨论】:
标签: sql-server tsql reporting-services