我有這個下面的查詢是讓我一個小的結果集SQL更新表圈
SELECT
LOC, PLAN, FiscalYear, FiscalPeriod, SALES
FROM
#CurrentPrd PrdAg
WHERE
NOT EXISTS (SELECT AGE.ECPLAN
FROM ECPG_BAK AGE
WHERE PrdAg.LOC = AGE.STORE
AND PrdAg.PLAN = AGE.PLAN
AND PrdAg.FiscalYear = AGE.FiscalYear
AND PrdAg.FiscalPeriod = AGE.FiscalPeriod)
結果集是這樣的:
LOC PLAN FiscalYear FiscalPeriod SALES
---------------------------------------------------
5 6 2031 5 -0.206232
12 6 2031 5 5.243052
12 8 2020 4 1.699716
12 8 2020 5 1.699716
14 6 2031 5 0.299972
19 6 2031 5 1.549812
19 8 2020 5 20.114116
33 6 2031 5 2.159767
33 8 2020 5 23.796883
34 6 2031 5 1.142360
34 8 2020 5 9.348583
................................................
然後我有一個讓我一個這樣的其它查詢我需要添加到SALES
列的編號。例如,下面的查詢,我用固定祿,並計劃拿出數:
select
(select SALES
from #TOT
where loc = 12 and PLAN = 6) - (select sum(sales)
from #CurrentPrd
where store = 12 and PLAN = 6) as Comp
假設上面這個查詢得到我10,我需要把它加入到排隊的結果上述設定的2 ,使其
LOC PLAN FiscalYear FiscalPeriod SALES
----------------------------------------------
12 6 2031 5 15.243052
我的目標是使之顯得有些動態的,一個簡單的方法做的全過程,所以對於每個LOC和計劃的組合,我會堵塞這些值轉換成第二選擇,以獲取正確的號碼添加到銷售,然後更新#CurrentPrd。將新號碼寫入新的臨時表也是一種選擇。
我希望我能夠解釋我想要做什麼。任何幫助,將不勝感激。
謝謝。
我不確定爲什麼你需要的東西,如果動態這是完全靜態的。 ..例如你不能只在SELECT語句中使用子查詢,如SELECT LOC,PLAN,FiscalYear,FiscalPeriod,SALES +(SELECT Sales FROM #TOT WHERE LOC = PrdAg.LOC AND PLAN = PrdAg.PLAN) - (SELECT SUM )FROM #CurrentPrd WHERE Store = PrdAg.LOC AND PLAN = PrdAg.PLAN)FROM #CurrentPrd AS PrdAg ...'? – ZLK