MYSQL: Vaciar campos que no apuntan a nada

Imaginemos que tenemos dos tablas EMPRESAS y TRABAJADORES, donde en la tabla trabajadores tenemos un campo IDEMPRESA para enlazar dichas tablas.
Resulta que por cosas del sistema, tenemos que eliminar varias empresas, por lo tanto tendremos TRABAJADORES cuyo campo IDEMPRESA debería ponerse a 0, eso es lo que quiero conseguir con un solo UPDATE sin tener que hacer un bucle y comprobar uno a uno si existe dicha empresa.
Gracias expertos!
Respuesta
1
Vunci, tenes que hacer un select sobre la tabla EMPRESAS dentro del update. Te paso un qry orientativo ya que no tengo más información de los campos. Para el campo de la tabla empresa voy usar la nombre "campo_empresa":
update TRABAJADORES t
set t.IDEMPRESA= 0 where not exists (
select * from EMPRESAS e where
t.IDEMPRESA = e.campo_empresa)
Cualquier duda estoy a disposición.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas