解决的计算值UPDATE/INSERT从2个表
我坚持的东西,我甚至不知道是否有可能是我想要做的事。
基本上我想更新(或更好的是,立即与插入)一个特定的领域与当前表中的乘法和另一个表中的值。
这是迄今为止查询:
UPDATE Orders
SET Total = (SELECT p.Price * o.Quantity
FROM Products p, Orders o
WHERE p.ProductID = o.ProductID
AND p.ProductID = 110)
WHERE o.OrderID = 112;
奇怪的是,当我完全运行SELECT部分,它返回一个整数干净。
当我删除了“子查询”并插入这个数字在它的位置,更新查询工作正常,但是当我试图做到像上面显示我得到一个错误
“操作必须使用一个可更新查询'
有没有人见过并解决过这个问题?任何帮助将是非常赞赏,谢谢提前
编辑
感谢您的帮助球员,我不得不做一些调整,但现在它完美。我用下面的查询:(只是要清楚,这是一个.mdb Access数据库)
UPDATE Orders
INNER JOIN Products ON Products.ProductID = Orders.ProductID
SET Orders.Total = Orders.Price * Orders.Quantity
WHERE OrderID = 112;
如果这个问题已经解决,那么你应该做的是选择正确的答案。然后我们会知道问题已解决(不在问题顶部添加'已解决')。 –