Фиксация даты для извлечения данных за предыдущий месяц и текущий месяц - PullRequest
0 голосов
/ 23 апреля 2019

Наша система извлекает данные до предыдущего дня, я пытаюсь увидеть варианты извлечения данных за предыдущий месяц, если текущая дата равна 1, а если текущая дата - после 1, то в этом случае мне нужно просмотреть данные за текущий месяц, начиная с конца и до конца.месяца

С этим ежемесячно я продолжаю изменять "@previous_calendar_date"

declare @first_day_of_previous_calendar_date_month datetime     
set @first_day_of_previous_calendar_date_month = dateadd(dd,-datepart(dd,@previous_calendar_date)+1,@previous_calendar_date)

Я не хочу ручного вмешательства ежемесячно здесь.

declare @previous_calendar_date datetime        
set @previous_calendar_date = '20190430'

declare @first_day_of_previous_calendar_date_month datetime     
set @first_day_of_previous_calendar_date_month = dateadd(dd,-datepart(dd,@previous_calendar_date)+1,@previous_calendar_date)

1 Ответ

0 голосов
/ 23 апреля 2019

Я думаю, вы хотите что-то вроде этого:

where (day(getdate()) = 1 and datediff(month, datecol, getdate()) = 1) or
      (day(getdate()) <> 1 and datediff(month, datecol, getdate()) = 0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...