Пользовательский SQL Расписание для выполнения команды - PullRequest
1 голос
/ 05 августа 2020

Мне нужен способ запускать команду SQL дважды в месяц после этого logi c:

Запускать в четверг после 2-го вторника месяца

И

Запуск в четверг, следующий за 4-м вторником месяца

Возможно ли это?

1 Ответ

0 голосов
/ 05 августа 2020

Ежедневный запуск сделает свое дело

    IF (
  SELECT 
    DATEADD(
      Month, 
      DATEDIFF(
        Month, 
        0, 
        GETDATE()
      ), 
      0
    ) + 6 + 7 - (
      DATEPART(
        Weekday, 
        DATEADD(
          Month, 
          DATEDIFF(
            Month, 
            0, 
            GETDATE()
          ), 
          0
        )
      ) + (@@DateFirst + 3) + 7
    ) % 7 + 2
) -- Thursday after SECOND tuesday IN the this month
= GETDATE() 
OR (
  SELECT 
    DATEADD(
      Month, 
      DATEDIFF(
        Month, 
        0, 
        GETDATE()
      ), 
      0
    ) + 6 + 21 - (
      DATEPART(
        Weekday, 
        DATEADD(
          Month, 
          DATEDIFF(
            Month, 
            0, 
            GETDATE()
          ), 
          0
        )
      ) + (@@DateFirst + 3) + 21
    ) % 7 + 2
) = GETDATE() -- Thursday after FOURTH tuesday IN the this month
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...