Estoy intentando eliminar de algunas tablas a la vez. He hecho un poco de investigación, y se acercó con esta¿Cómo eliminar desde múltiples tablas en MySQL?
DELETE FROM `pets` p,
`pets_activities` pa
WHERE p.`order` > :order
AND p.`pet_id` = :pet_id
AND pa.`id` = p.`pet_id`
Sin embargo, estoy consiguiendo este error
no detectada Database_Exception [1064]: Usted tiene un error en su sintaxis SQL; compruebe el manual que corresponde a su versión del servidor MySQL para el sintaxis derecho al uso cerca de 'p, pa ...
pets_activities
que nunca he hecho una tabla cruzada borrar antes, así que estoy atascado y sin experiencia para ¡ahora!
¿Qué estoy haciendo mal?
Intenté esto "eliminar todo en 1 consulta" con la unión de 6 tablas grandes (alrededor de ~ 15k filas) y la consulta tomó 155 segundos para eliminar 63 filas en 6 tablas: O – techouse
@cadman Esta es la verdadera respuesta correcta; puede haber argumentos en contra de usarlo, pero es muy útil en ocasiones –
+1 Estoy de acuerdo con esto en la verdadera respuesta correcta, ya que la pregunta no era "debería", sino "cómo hacerlo". Sin embargo, me interesaría saber sobre el 1% porque no puedo pensar en una sola situación en la que se prefiera. –