开发者社区> 问答> 正文

在过去n周内进行过滤

我有一份有关Cognos 11的报告,我想在其中显示过去n(比如15)周的数据。我使用2个过滤器快速而又肮脏地进行了测试:

[Année] = extract(year;getdate())
[N° Semaine] >= _week_of_year (getdate()) - 15

但是,2020年即将到来,因此,如果我保留这些过滤条件,那么在今年的前15周内,我的数据将非常有限。

最好的说法是:“如果我们还没有达到第15周,则包括2019年的最后一周以及之前的那一周,等等。” ?

框架中可供我使用的字段如下:

Date (ie : "10/12/2019")
Year (ie : 2019)
Month (ie : 12)
Week (ie : 48)
Year-Month (ie : "2019-12")
Weekday (ie : "Monday")

无论我尝试什么,我似乎都会遇到问题。如果我用

Date >= _add_months (getdate();-3) 例如,我将获得的第一周的数据取决于运行报表的日期。

由于Year-Month数据项是字符串,因此我不能做太多事情。

任何帮助将不胜感激。

展开
收起
祖安文状元 2020-01-05 14:38:31 379 0
1 条回答
写回答
取消 提交回答
  • 我找到了正确的方法:

    [Date] > _add_months (_add_days (getdate();-_day_of_week (getdate();1));-3)
    
    

    这是一种解决方法,因为我没有选择要返回的星期数,而是选择了几个月。

    2020-01-05 14:38:39
    赞同 展开评论 打赏
问答分类:
BI
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载