Tengo que eliminar filas de guide_category
que no tienen relación con la tabla guide
(relaciones muertas).SQL DELETE con JOIN en otra tabla para WHERE condición
Esto es lo que quiero hacer, pero por supuesto no funciona.
DELETE FROM guide_category AS pgc
WHERE pgc.id_guide_category IN (SELECT id_guide_category
FROM guide_category AS gc
LEFT JOIN guide AS g ON g.id_guide = gc.id_guide
WHERE g.title IS NULL)
error:
You can't specify target table 'guide_category' for update in FROM clause
Esto es debido a una limitación desagradable en MySQL. Vea la respuesta de Quassnoi: tiene la solución adecuada para abordar esto. –