我正在尝试删除表中除最近的3000个项目以外的所有项目。该表有105,000条记录。
我正在尝试此操作,但是错误生成了不正确的语法。
delete tRealtyTrac where creation in( select top 103000 from tRealtyTrac order by creation)
最佳答案
delete语法将与您拥有的语法稍有不同。一个例子是:
DELETE FROM tRealtyTrac
WHERE creation in( select top 103000 creation from tRealtyTrac order by creation)
注意如何有“from”关键字。这就是说我们要从名为tRealtyTrac的表中删除
我预见到的一个问题是,您可能不希望使用创建...
反而:
DELETE FROM tRealtyTrac
WHERE someuniqueidcolumnlikeakeyofsomesort in( select top 103000 someuniqueidcolumnlikeakeyofsomesort from tRealtyTrac order by creation)
否则,您可能会删除超出预期的范围。
关于SQl从表格中删除前100名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/809294/