I am trying to fill out a date table that contains each date for the next 35 years with information about each day.
In my ERP system there is a table of accounting years (GLRULE), which determines the reporting periods for each specific year, since many companies do not work during calendar months.
The GLRule table contains one record for each period and looks like this:
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
In any case, I can update the date table field one at a time with a query like this:
UPDATE redfridaydates.dbo.testdates SET [FISCAL_PERIOD] = (SELECT fnnumber FROM m2mdata01..glrule GLR where DATE >= GLR.FDSTART and DATE <= GLR.FDEND)
Is there a better way to update multiple fields at a time? I am not sure how I can do this, since I have no participation.
source share