Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Czy można usunąć z wielu tabel w tej samej instrukcji SQL?

Nie, musiałbyś uruchomić wiele instrukcji.

Ponieważ musisz usunąć z dwóch tabel, rozważ utworzenie tabeli tymczasowej z pasującymi identyfikatorami:

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

A następnie usuń z każdej tabeli:

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

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy kolejność kolumn w klauzuli WHERE ma znaczenie?

  2. Dlaczego drugie zapytanie T-SQL działa znacznie szybciej niż pierwsze wywołane przez Reporting Services 2005 w aplikacji internetowej?

  3. Unikalne ograniczenie w wielu kolumnach

  4. SQL Server FOR JSON AUTO Przykłady (T-SQL)

  5. Sprawdź/zmień poziom zgodności bazy danych w SQL Server (SSMS)