Buenos días,
Os pongo un poco en situación....
En mi BD tengo unas tablas relacionadas de la siguiente manera:
movimientos
Id
idequipos_contadores (FK a equipos_contadores)
equipos_contadores
Id
idequipo (FK a equipos)
equipos
Id
idinstalacion (FK a instalaciones)
instalaciones
Id
Lo que quiero es poder borrar los movimientos que pertenezcan a una instalación concreta (la última tabla de la relación)
Había intentando esta query
Código:
DELETE FROM bdaforo.movimientos_contadores
WHERE idmovimientos_contadores IN (
SELECT mc.idmovimientos_contadores
FROM bdaforo.movimientos_contadores mc
LEFT JOIN bdaforo.equipos_contadores ec
ON mc.idequipos_contadores = ec.idequipos_contadores
LEFT JOIN bdaforo.equipos e
ON ec.idequipo = e.idequipos
LEFT JOIN bdaforo.instalaciones i
ON e.idInstalacion = i.idInstalacion
WHERE i.idInstalacion = '8'
) AND fecha_horaRegistro BETWEEN '2014-03-01 00:00:00' AND '2014-03-12 00:00:00'
pero me da el error Error Code: 1093. You can't specify target table 'movimientos_contadores' for update in FROM clause
Como debería hacerlo??
Gracias!