我正在尝试使用2个表设置更新,但我不知道如何加入第二个表。
我现在拥有的:
UPDATE Exp SET AMOUNT = 15, inner join Sal WHERE (DN = 120 AND NOM = 2122)
OR (DN = 120 AND EAN = 2000000221412);
Table Exp:
DN | NOM | AMOUNT |
.........................
120 | 2122 | 0 |
Table Sal:
NOM | EAN |
..........................
2122 | 2000000221412 |
感谢。
编辑1:没有加入,有没有办法做到?
答案 0 :(得分:1)
通用语法 -
UPDATE A
SET foo = B.bar
FROM TableA A
JOIN TableB B
ON A.col1 = B.colx
WHERE ...
所以你可以试试这个 -
UPDATE Exp SET AMOUNT = 15
FROM Exp e
INNER JOIN Sal s
ON
e.NOM = s.NOM
WHERE
e.DN=120 and s.EAN = 2000000221412; --some conditions. Edit according to your need
这应该有用。
答案 1 :(得分:0)
正确的语法将join
作为update
的一部分。您还需要join
密钥,其类似于nom
:
UPDATE Exp inner join
Sal
ON exp.nom = sal.nom
SET exp.AMOUNT = 15
WHERE exp.DN = 120 AND (exp.NOM = 2122 OR sal.EAN = 2000000221412);