1
行
我有這樣的查詢:更新行調用一次每
UPDATE RM
SET RM.WEEK_1 = (
SELECT P.AVERAGE_AVAI FROM dbo.f_SCAVAI_GetWeekAverage(RM.OPRO_KEY, @WEEKS_MONTH, @cWorkDaysOnly, RM.KAPACITETA) P WHERE P.WEEKOFMONTH = 1
),
RM.WEEK_2 = (
SELECT P.AVERAGE_AVAI FROM dbo.f_SCAVAI_GetWeekAverage(RM.OPRO_KEY, @WEEKS_MONTH, @cWorkDaysOnly, RM.KAPACITETA) P WHERE P.WEEKOFMONTH = 2
),
RM.WEEK_3 = (
SELECT P.AVERAGE_AVAI FROM dbo.f_SCAVAI_GetWeekAverage(RM.OPRO_KEY, @WEEKS_MONTH, @cWorkDaysOnly, RM.KAPACITETA) P WHERE P.WEEKOFMONTH = 3
),
RM.WEEK_4 = (
SELECT P.AVERAGE_AVAI FROM dbo.f_SCAVAI_GetWeekAverage(RM.OPRO_KEY, @WEEKS_MONTH, @cWorkDaysOnly, RM.KAPACITETA) P WHERE P.WEEKOFMONTH = 4
),
RM.WEEK_5 = (
SELECT P.AVERAGE_AVAI FROM dbo.f_SCAVAI_GetWeekAverage(RM.OPRO_KEY, @WEEKS_MONTH, @cWorkDaysOnly, RM.KAPACITETA) P WHERE P.WEEKOFMONTH = 5
),
RM.WEEK_6 = (
SELECT P.AVERAGE_AVAI FROM dbo.f_SCAVAI_GetWeekAverage(RM.OPRO_KEY, @WEEKS_MONTH, @cWorkDaysOnly, RM.KAPACITETA) P WHERE P.WEEKOFMONTH = 6
)
FROM @ROOMS_BY_DEPA_KEY1 RM
這工作,但它是緩慢的,因爲dbo.f_SCAVAI_GetWeekAverage
被每星期數。該函數返回給定OPRO_KEY
的相同結果。基本上,如果這個函數每行只調用一次(一次爲OPRO_KEY
)就足夠了,然後每週的結果將從該表中更新。是否有可能做這樣的事情?因此,不是每週調用這個函數,而是每行只調用一次,並且根據WEEKOFMONTH
更新幾周?
謝謝回答。我沒有看到任何週數的結果?就像沒有更新。 – FrenkyB