使用Select Query MS Access合并更新查询

时间:2014-06-16 11:35:46

标签: sql ms-access

我有一个更新查询,用于更新订单表中的StatusFK。我有一个Select查询,显示包含所有OrderDetails且状态= 2(已接收)的订单

我想结合2个查询,以便在一个查询中找到更新和更新所有找到的记录的记录?这有可能吗?

UPDATE tblOrder INNER JOIN tblOrderDetail ON tblOrder.OrderPK = tblOrderDetail.OrderFK 
SET tblOrder.Statusfk = 2
WHERE (((tblOrderDetail.OrderFK)=[forms]![frmReceive]![OrderPK]));

查找需要接收的订单

SELECT tblOrder.OrderPK
FROM tblOrder
WHERE NOT EXISTS (
SELECT 1
FROM tblOrderDetail
WHERE tblOrderDetail.OrderFK = tblOrder.OrderPK
AND tblOrderDetail.StatusFK <> 2 AND tblOrder.StatusFK );

1 个答案:

答案 0 :(得分:0)

我认为你可以这样做:

UPDATE tblOrder
    SET tblOrder.Statusfk = 2
WHERE NOT EXISTS (SELECT 1
                  FROM tblOrderDetail
                  WHERE tblOrderDetail.OrderFK = tblOrder.OrderPK AND
                        tblOrderDetail.StatusFK <> 2 AND
                        tblOrder.StatusFK
                 );