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

SQL:Usuwanie zduplikowanych rekordów w SQL Server

Cóż, to jeden z powodów, dla których powinieneś mieć klucz podstawowy na stole. Jaka wersja SQL Server? Dla SQL Server 2005 i nowszych:

;WITH r AS
(
    SELECT col1, col2, col3, -- whatever columns make a "unique" row
    rn = ROW_NUMBER() OVER (PARTITION BY col1, col2, col3 ORDER BY col1)
    FROM dbo.SomeTable
)
DELETE r WHERE rn > 1;

Następnie nie musisz robić tego ponownie jutro, a następnego dnia i pojutrze zadeklaruj klucz podstawowy na stole.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak utworzyć indeks nieklastrowy w Create Table?

  2. Zapytanie SQL działa przez bardzo długi czas, jeśli wyszukiwany termin nie zostanie znaleziony

  3. Nieprawidłowa składnia w pobliżu „(” podczas sprawdzania fragmentacji indeksu

  4. Statystyka obiektów bazy danych SQL Server

  5. Jak wysyłać wiadomości e-mail z serwera SQL (T-SQL)