我使用SQL Server2017。我需要安排作业在每月的7号到27号之间的每天的12am和12pm运行。换句话说,我需要在每个月的两个日期之间每天两次工作。
我可以在一项计划任务中执行此操作,还是必须在每天的确切工作中创建两个作业?
以此类推。
如果我每天必须为每个悬停工作创建一个工作,那么我将有几个时间表。
更新1:我是通过在“计划”标签中创建几个步骤来做到这一点的,但是我希望以更少的步骤来做到这一点。
更新2: 如果我可以像下面这样创建两个步骤,那么对我会很好。
1:每月发生一次,发生时间是每月7日至27日上午12点
2:每月发生在7点至27点之间的中午12点
答案 0 :(得分:0)
一种方法是使用DATENAME
或DATEPART
检查日期是否在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 AM开始,每12小时发生一次。