Обновить таблицу mysql с помощью запроса select из другой базы данных

У меня две базы данных, и я хочу обновить одну таблицу со значениями из другой таблицы базы данных. Я использую следующий запрос, но он не работает.

UPDATE database1.table1 SET field2 = database2.table1.field2 WHERE database1.table1.field1 = database2.table1.field1 

Я также пробовал следующий запрос, но он не работает:

 UPDATE database1.table1 SET field2 = "SELECT field2 FROM database2.table1" WHERE database1.table1.field1 = database2.table1.field1 

Related of "Обновить таблицу mysql с помощью запроса select из другой базы данных"

ОБНОВЛЕНИЕ 1

на основе вашего комментария , markup должна быть частью соединения. Вот правильный:

 UPDATE oman.ProductMaster_T INNER JOIN main.ProductMaster_T ON main.ProductMaster_T.ProductID = oman.ProductMaster_T.ProductID SET oman.ProductMaster_T.Markup = main.ProductMaster_T.Markup 

вы можете даже добавить ALIAS для упрощения утверждения,

 UPDATE oman.ProductMaster_T o INNER JOIN main.ProductMaster_T m ON m.ProductID = o.ProductID SET o.Markup = m.Markup