У меня есть две таблицы...
table1 (id, item, price):
id | item | price
-------------
10 | book | 20
20 | copy | 30
30 | pen | 10
.... table2 (id, item, price) значения:
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 = (выберите цену из таблицы2, где table1.id = table2.id);
Это, безусловно, будет работать:
UPDATE table1
SET table1.price=(SELECT table2.price
FROM table2
WHERE table2.id=table1.id AND table2.item=table1.item);