【问题标题】: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 点发生

【问题讨论】:

    标签: sql-server-2016 jobs sql-agent-job


    【解决方案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 小时发生一次。

    【讨论】:

      猜你喜欢
      • 2016-10-10
      • 2016-09-30
      • 1970-01-01
      • 1970-01-01
      • 2015-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-25
      相关资源
      最近更新 更多