0
我有3個表被如下:基於聚合函數 「SUM」 更新選擇:
PODetail:
PODetailID POID ItemID POQuantity StatusID
------------ ------ -------- ------------ ----------
1 1 10 8.00 2
2 1 17 33.00 2
3 2 1 7.00 2
MRVDetail:
MRVDetailID AcceptedQty PODetailID
-------------- ------------- ------------
1 3.00 3
2 4.00 3
3 10.00 4
@Detail://它是表變量
PODetailID POQuantity
------------ ------------
3 7
這裏,基於在上面的3張桌子上。當PODetailID = POVQuantity表變量@PODetail到特定的PODetailID時,我想將PODetail StatusID = 4更新爲PODetail StatusID = 4時的最小值(最大值) 。
如何實現這一目標?
我試過下面的更新聲明。但它根本不起作用。這個怎麼做?請幫幫我。
UPDATE
PODetail
SET
PODetail.StatusID = 4
FROM
PODetail
INNER JOIN @Detail P ON PODetail.PODetailID = P.PODetailID
INNER JOIN MRVDetail ON MRVDetail.PODetailID = P.PODetailID
WHERE
(SELECT SUM(AcceptedQty) FROM MRVDetail WHERE MRVDetail.PODetailID = P.PODetailID) = P.POQuantity
AND PODetail.POID = 2
是否查詢產生錯誤或只是沒有更新? – ipr101
沒有錯誤。上述查詢不會選擇任何問題的行。 – thevan