How to delete the top 1000 rows from a table using Sql Server 2008?
问题 I have a table in SQL Server. I would like to delete the top 1000 rows from it. However, I tried this, but I instead of just deleting the top 1000 rows it deleted all the rows in the table. Here is the code: delete from [mytab] select top 1000 a1,a2,a3 from [mytab] 回答1: The code you tried is in fact two statements. A DELETE followed by a SELECT . You don't define TOP as ordered by what. For a specific ordering criteria deleting from a CTE or similar table expression is the most efficient way.