sql >> Database teknologi >  >> RDS >> Sqlserver

Slet kun poster, der er ældre end 50 rækker, mens du grupperer efter 1 kolonne

Givet det faktum, at du ikke har angivet noget tabelskema, lad os sige, at tabellen ser noget ud som

MyDealersTable
- DealerID
- SomeOtherColumn
- DealerMotherName
- DealerSportInterest
- SomeTimeStamp 

Du kan prøve noget lignende

;WITH Dealers AS (
    SELECT *,
        ROW_NUMBER() OVER(PARTITION BY DealerID ORDER BY SomeTimeStamp DESC) RowID
    FROM MyDealersTable
)
DELETE 
FROM Dealers
WHERE RowID > 50

Fra MED common_table_expression (Transact-SQL)




  1. en artikel om flere kategorier

  2. Sådan ændres kolonnedatatype i SQL-database uden at miste data

  3. Bruger gruppe af kolonner som en unik nøgle i MySQL

  4. Hvordan får man det sidste indsatte id?