根据条件更新列值与另一个表的列

我有两张桌子…

table1(id,item,price)值:

id | item | price ------------- 10 | book | 20 20 | copy | 30 30 | pen | 10 

…. table2(id,item,price)values:

 id | item | price ------------- 10 | book | 20 20 | book | 30 

现在我想:

 update table1 set table1.Price = table2.price where table1.id = table2.id and table1.item = table2.item. 

我该怎么做?

像这样的东西应该这样做:

 UPDATE table1 SET table1.Price = table2.price FROM table1 INNER JOIN table2 ON table1.id = table2.id 

你也可以试试这个:update table1 set price =(从table2select价格,其中table1.id = table2.id);

这肯定会起作用:

 UPDATE table1 SET table1.price=(SELECT table2.price FROM table2 WHERE table2.id=table1.id AND table2.item=table1.item);