sql >> Base de Datos >  >> RDS >> Sqlserver

¿Es posible eliminar de varias tablas en la misma instrucción SQL?

No, necesitaría ejecutar varias declaraciones.

Debido a que necesita eliminar de dos tablas, considere crear una tabla temporal de las identificaciones coincidentes:

SELECT U.Id INTO #RecordsToDelete
FROM Users U
   JOIN LinkingTable J ON U.Id = J.U_Id
...

Y luego elimine de cada una de las tablas:

DELETE FROM Users 
WHERE Id IN (SELECT Id FROM #RecordsToDelete)

DELETE FROM LinkingTable
WHERE Id IN (SELECT Id FROM #RecordsToDelete)