Aby zaktualizować za pomocą tego zapytania, należy użyć widoku z zachowaniem klucza. Oracle nie zezwala na klauzulę From w zapytaniu aktualizacyjnym lub użyj aktualizacji skorelowanej lub scalaj tylko z aktualizacją.
Skorelowana aktualizacja:
UPDATE table1 t1
SET (name, desc) = (SELECT t2.name, t2.desc
FROM table2 t2
WHERE t1.id = t2.id)
WHERE EXISTS (
SELECT 1
FROM table2 t2
WHERE t1.id = t2.id )