sql >> Database >  >> RDS >> Sqlserver

Hoe de bovenste 1000 rijen uit een tabel te verwijderen met SQL Server 2008?

De code die je hebt geprobeerd is in feite twee statements. Een DELETE gevolgd door een SELECT .

U definieert TOP niet zoals besteld door wat.

Voor een specifiek bestelcriterium is het verwijderen uit een CTE of vergelijkbare tabeluitdrukking de meest efficiënte manier.

;WITH CTE AS
(
SELECT TOP 1000 *
FROM [mytab]
ORDER BY a1
)
DELETE FROM CTE


  1. Gebruikt het gebruik van NULL in PostgreSQL nog steeds een NULL-bitmap in de header?

  2. Wat is Percona DB

  3. JOIN (SELECT ... ) ue ON 1=1?

  4. Is het mogelijk om een ​​time-out in te stellen voor een SQL-query op Microsoft SQL Server?