Consulta avanzada de MySql: tabla de actualización con información de otra tabla

Me gustaría actualizar una tabla en mySql con datos de otra tabla.

Tengo dos tablas “personas” y “negocios”. La tabla de personas está vinculada a la tabla de negocios por una columna llamada “business_id”.

La estructura de tabla necesaria, la clave principal está marcada con un asterisco (Tabla: columnas): Personas: * id_empresa, * ordenación_ordenada, correo electrónico Empresa: * id_empresa, correo electrónico

Me gustaría actualizar la columna de correo electrónico de la tabla de negocios con el correo electrónico de la tabla de personas, algo así (sé que me falta algo aquí):

UPDATE business b SET email = (SELECT email from People p where p.business_id = b.business_id AND sort_order = '1') WHERE b.email = ''; 

¿Esto tiene sentido? ¿Es posible?

 UPDATE business b, people p SET b.email = p.email WHERE b.business_id = p.business_id AND p.sort_order = '1' AND b.email = '' 

Tenga en cuenta que si sort_order es un INT, entonces no use ‘1’ – use 1:

 UPDATE business b JOIN People p ON p.business_id = b.business_id AND p.sort_order = '1' SET b.email = p.email WHERE b.email = ''; 

Prueba esto, funciona bien para mí.

 Update table a, table b Set a.importantField = b.importantField, a.importantField2 = b.importantField2 where a.matchedfield = b.matchedfield;