Я пытаюсь заполнить таблицу дат, которая содержит каждую дату на следующие 35 лет, информацией о каждом дне.
В моей системе ERP есть таблица учетных лет (GLRULE), в которой указываются отчетные периоды для каждого конкретного года, поскольку многие компании не работают в календарных месяцах.
Таблица GLRule содержит одну запись для каждого периода и выглядит так:
fcbasis fcname fcstatus fdend fdstart flisadjust flisaudit fnnumber freval identity_column
A FY 2000 C 1/28/2000 0:00:00 1/1/2000 0:00:00 FALSE FALSE 1 FALSE 37
A FY 2000 C 2/25/2000 0:00:00 1/29/2000 0:00:00 FALSE FALSE 2 FALSE 38
A FY 2000 C 3/31/2000 0:00:00 2/26/2000 0:00:00 FALSE FALSE 3 FALSE 39
A FY 2000 C 4/28/2000 0:00:00 4/1/2000 0:00:00 FALSE FALSE 4 FALSE 40
A FY 2000 C 5/26/2000 0:00:00 4/29/2000 0:00:00 FALSE FALSE 5 FALSE 41
A FY 2000 C 6/30/2000 0:00:00 5/27/2000 0:00:00 FALSE FALSE 6 FALSE 42
В любом случае, я могу обновить свою таблицу дат по одному полю за раз с помощью запроса, подобного следующему:1008 *
UPDATE redfridaydates.dbo.testdates
SET [FISCAL_PERIOD] =
(SELECT fnnumber
FROM m2mdata01..glrule GLR
where DATE >= GLR.FDSTART and DATE <= GLR.FDEND)
Есть ли лучший способ обновить несколько полей одновременно?Я не уверен, как я могу это сделать, так как у меня нет соединения.