Kod, którego próbowałeś, to w rzeczywistości dwie instrukcje. DELETE
po którym następuje SELECT
.
Nie definiujesz TOP
zgodnie z zamówieniem.
W przypadku określonych kryteriów porządkowania usuwanie z CTE lub podobnego wyrażenia tabelowego jest najskuteczniejszym sposobem.
;WITH CTE AS
(
SELECT TOP 1000 *
FROM [mytab]
ORDER BY a1
)
DELETE FROM CTE