安排任务在两个日期之间每天运行两次

Posted

技术标签:

【中文标题】安排任务在两个日期之间每天运行两次【英文标题】:Schedule a task to run two times a day between two date 【发布时间】:2019-04-12 18:34:24 【问题描述】:

我使用 SQL Server 2017。我需要在每月 7 日至 27 日之间的每一天的上午 12 点和下午 12 点安排一个作业。换句话说,我需要在每个月的两个日期之间每天运行两次我的工作。

我可以在一个计划任务中执行此操作,还是必须为每一天创建两个作业?

第 7 个月上午 12 点

第 7 个月下午 12 点

等等等等。

如果我必须为每天的每次悬停创建一个工作,我将有几个时间表。

更新 1:我通过在计划选项卡中创建几个步骤来做到这一点,但我希望用更少的步骤来做到这一点。

更新 2: 如果我可以像下面这样创建两个步骤,那对我有好处。

1 :每月 7 日至 27 日凌晨 12 点发生

2 : 每月 7 日至 27 日中午 12 点发生

【问题讨论】:

【参考方案1】:

一种方法是使用DATENAMEDATEPART 检查日期是否在7 日和27 日之间。

--IF (DATENAME(DAY, GETDATE()) >= 7 AND DATENAME(DAY, GETDATE()) <= 27) 
IF DATEPART(DD, GETDATE()) BETWEEN 7 AND 27
BEGIN
    EXEC [Your Stored Procedure]        
END

然后将每日频率设置为从凌晨 12:00 开始,每 12 小时发生一次。

【讨论】:

以上是关于安排任务在两个日期之间每天运行两次的主要内容,如果未能解决你的问题,请参考以下文章

使用 Laravel 每天安排两次任务

安排任务每天在 eJabberd 服务器上运行?

安排每天运行 2 次的任务 [重复]

气流:任务调度间隔数秒,两次

气流回填不起作用

如何安排不使用Windows任务计划程序运行bat文件?