0
我一直在檢查堆棧溢出幾個職位對這個錯誤,我也拿到了,而我試圖添加一個SQL查詢檢索列tblAR.ARID
如下:如何解決錯誤:將值賦給變量的SELECT語句不能與數據檢索結合使用?
SELECT tblAR.ARID,
@GP = (Sum(ard.Amount))
-(Sum((CASE WHEN MaterialNumber='REBATE' THEN [qty]
WHEN ard.Amount<0 THEN -1*ABS([qty])
ELSE ABS([qty])
END)))
FROM
tblMMMaterials mm
INNER JOIN tblARDetail ard ON mm.MatID = ard.MatID
INNER JOIN tblAR arh ON ard.ARID = arh.ARID
WHERE [email protected]
我才知道我不能在單個查詢中都做。所以,我分了查詢分爲兩個如下:
SELECT
@GP = (Sum(ard.Amount))
-(Sum((CASE WHEN MaterialNumber='REBATE' THEN [qty]
WHEN ard.Amount<0 THEN -1*ABS([qty])
ELSE ABS([qty])
END)))
FROM
tblMMMaterials mm
INNER JOIN tblARDetail ard ON mm.MatID = ard.MatID
INNER JOIN tblAR arh ON ard.ARID = arh.ARID
WHERE [email protected]
select tblAR.ARID from tblAR
WHERE [email protected]
雖然沒有給我任何的錯誤,我沒有信心,如果這後面的SQL代碼是100%的理想選擇。換句話說,我想知道是否足以在第二個查詢中包含'WHERE'條件,即WHERE [email protected]
。請幫忙
這不一定是相同的,因爲'INNER JOIN's可以過濾或者取決於對這些表中的數據中的某些行相乘。如果你解釋你真正想做的事情會更好 – Lamak
@Lamak:非常感謝回覆。實際上,我需要屬於'rundate'的ARID並滿足它爲'GP'所做的一切。我不確定我是否也需要包含這些內部連接。所以,我最終只包括條件。這給了我一堆ARID – toofaced