【问题标题】:Executing a sql script every month for the first and last 16 days.每个月在第一天和最后 16 天执行一次 sql 脚本。
【发布时间】:2017-01-03 18:10:50
【问题描述】:

我有一个脚本必须手动运行几次,但现在看来它需要每月运行两次。问题是日期是动态的,作业需要在每个月的 1 日和 16 日运行,但它需要提取过去 16 天的所有数据。因此,例如,如果我们在本月的第一天(一月)运行它,日期将是 >= 2016-12,16 和

我一直在查看 sql server 的日期函数,但我不确定它是否能满足我的需要。

【问题讨论】:

  • 你看过datediffeomonth吗?
  • “查看日期函数”是什么意思?您尝试了什么,遇到了什么错误?

标签: sql-server sql-server-2012


【解决方案1】:

我会查看 DateAdd,并将负数的日期添加到值中以返回 16 天。

DATEADD(DAY, -16, GETDATE()). 

我个人会使用 cron 运行一个脚本,并将其设置为在每个月的 1 号和 16 号运行。

【讨论】:

  • 谢谢 Loaf,这正是我想要的。
最近更新 更多