sql >> Base de Datos >  >> RDS >> Mysql

Eliminar de la tabla usando la columna de otra tabla

Puede evitar la tabla temporal y hacer un bucle en mysql, puede eliminar las dos tablas en una sola consulta y usar una consulta solar para los datos temporales

   DELETE t1, t2
   FROM AppCoverLetter t1
   INNER JOIN (
     SELECT AppId 
     FROM ApplyData.AppFormData 
     where lower(Email) = lower(_email_)
   ) t3 ON t1.AppID = t3.AppId
   INNER JOIN AppError t2 ON t2.AppID = t3.AppId;

o si tienes más mesa

   DELETE t1, t2, tx
   FROM AppCoverLetter t1
   INNER JOIN (
     SELECT AppId 
     FROM ApplyData.AppFormData 
     where lower(Email) = lower(_email_)
   ) t3 ON t1.AppID = t3.AppId
   INNER JOIN AppError t2 ON t2.AppID = t3.AppId
   INNER JOIN table3 tx ON tx.AppID = t3.AppId;