Хорошо, я чувствую, что должен это сделать, но я искал безрезультатно.Как выполнить скрипты в зависимости от того, какой месяц/день он?
Мне нужно показать один из двух разных наборов данных в зависимости от того, в какой день года он есть. В частности, если сегодня 31 октября (или ранее), я хочу вытащить все записи с 1 октября прошлого года до конца текущего года. Если сегодня после 31 октября, я хочу, чтобы в моем наборе данных показывались записи с 1 октября текущего года до конца следующего года.
В приведенном ниже коде создается простая переменная таблицы «Календарь», которая хранит все месяцы, существующие в определенном наборе данных. Сейчас я просто ограничиваю его датами в текущем году. Я хотел бы заменить это кодом, чтобы он функционировал, как я уже говорил выше. Я думал об использовании оператора IF, но я не могу понять, как сравнить его с днем и месяцем getdate().
DECLARE @calendar TABLE
( mon_name VARCHAR(10)
, mon_number INT
, yr INT
)
INSERT INTO @calendar
SELECT DATENAME(m,departure_date)
, MONTH(departure_date)
, YEAR(departure_date)
FROM trip_mission
WHERE departure_date <>'1/1/1900'
AND YEAR(departure_date) = YEAR(getdate())
GROUP BY DATENAME(m,departure_date)
, MONTH(departure_date)
, YEAR(departure_date)
Упрощенная форма вопроса может быть, как я могу запустить код только если сегодня < = 31 октября было бы просто супер, если бы я мог сказать < = 31 октября 2012, но мне это нужно чтобы быть динамичным, чтобы он перелистал каждый год.
Октябрь 2-31 отвечает указанным требованиям. Думаю, вам нужно изменить свой вопрос. Вы имели в виду «Если сегодня после 1 ноября»? – RThomas
Упс, спасибо, что поймал опечатку. Отредактированный пост. 31 октября - дата «переключения» данных. Фактические наборы данных накладываются на некоторые намеренно, но только один из них должен использоваться в зависимости от того, с какой стороны 31 октября сегодня. Имеют смысл? Трудно объяснить, когда я показываю только 1 набор данных. – gmaness
RThomas - На второй взгляд я понял, о чем вы говорили.Я обновил сообщение, чтобы теоретизировать тот же диапазон дат для набора данных. Мне нужно, чтобы он перешел на следующий «вид» каждый 31 октября. – gmaness