Pregunta

Tengo 2 tablas de una llamada "crítica" y el otro "REVIEW_DESCRIPTION"

Si hago una unión para obtener todos los datos de los dos:

SELECT *
FROM reviews 
INNER JOIN reviews_description
ON reviews.reviews_id=reviews_description.reviews_id
WHERE reviews.customers_id = 54183

En base a esto me gustaría eliminar filas de ambas tablas que responden a este criterio de una sola vez, algún consejo?

¿Fue útil?

Solución

Sí, MySQL soporta supresiones de más de una tabla en una sola declaración :

  

En la primera sintaxis de múltiples tablas, filas solamente emparejan de las tablas listadas antes de eliminar la cláusula FROM. Para la segunda sintaxis de múltiples tablas, se eliminan filas solamente emparejan de las tablas listadas en la cláusula FROM (antes de la cláusula USING). El efecto es que se puede eliminar filas de varias tablas al mismo tiempo y tienen tablas adicionales que se usan para buscar ...

En primer ejemplo de sintaxis de varias tablas:

DELETE reviews, reviews_description 
  FROM reviews r
  JOIN reviews_description rd
 WHERE reviews.reviews_id = reviews_description.reviews_id
   AND reviews.customers_id = 54183

Otros consejos

A menos que tenga on cascade delete o una configuración delete trigger tiene que utilizar 2 declaraciones

sería borrado en cascada ayuda?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top