2 mesas:
artículos (id, ...)
usuarios (id, item_id, ...)Eliminación de todos los registros de una tabla que no se hace referencia a otra tabla
¿Cómo eliminar todos registros en artículos que no están referenciados desde usuarios?
2 mesas:
artículos (id, ...)
usuarios (id, item_id, ...)Eliminación de todos los registros de una tabla que no se hace referencia a otra tabla
¿Cómo eliminar todos registros en artículos que no están referenciados desde usuarios?
Tenga en cuenta que NO IN puede ser realmente lento. A veces, sorprendentemente, es más rápido hacer algo como esto:
DELETE FROM items WHERE id IN
(SELECT id FROM items EXCEPT SELECT item_id FROM users)
DELETE FROM items WHERE id NOT IN (SELECT item_id FROM users)
(utiliza un subquery para seleccionar todos los item_ids
de users
y luego borra los registros de items
donde id
no se encuentra en los resultados de la subconsulta)
delete from items
where id not in (select item_id from users)
Esto es bueno en algunos otros lenguajes de SQL, pero MySQL no admite EXCEPTO. – earl3s