Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como excluir as 1000 principais linhas de uma tabela usando o Sql Server 2008?


O código que você tentou é na verdade duas instruções. Um DELETE seguido por um SELECT .

Você não define TOP conforme ordenado pelo quê.

Para um critério de ordenação específico, a exclusão de uma CTE ou expressão de tabela semelhante é a maneira mais eficiente.
;WITH CTE AS
(
SELECT TOP 1000 *
FROM [mytab]
ORDER BY a1
)
DELETE FROM CTE