0

我正在创建一个包来存储报告的生成日期。根据该日期需要推导出下一个星期三的日期。

例如:报告日期是 2019 年 11 月 11 日,所以星期三应该是 2019 年 11 月 13 日。

4

1 回答 1

0

此派生列表达式应提供下周三的日期。

DATEADD("DAY",((1 + DATEDIFF("DAY",(DT_DATE)"1/1/1970",GETDATE())) / 7) * 7 + 6,(DT_DATE)"1/1/1970")

零件(由内而外)。

  • 自 1970 年 1 月 1 日以来的天数 + 1。
  • (除以 7)(隐式转换为 Int)(乘以 7)将四舍五入到上周四。
  • 当添加到 1970 年 1 月 1 日(+6 天以上)的天数将移至下一个发生的星期三。

笔记

  • 如果没有最初的 1 天偏移量,如果 GETDATE() 是星期三,则结果将是 GETDATE() 的日期。
  • GETDATE() 可以根据需要替换为 GETUTCDATE() 或日期变量。
  • 如果需要星期二,可以将 +6 移回 +5。
于 2019-11-19T05:24:52.930 回答