SQl从表格中删除前100名

标签 sql

我正在尝试删除表中除最近的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/

相关文章:

sql - 不知道如何编写复杂的 SQL 查询

SQL - 如何选择特定列中具有最大值的数据行?

mysql - 根据特定表字段连接两个表

mysql - 值为NULL时无法添加外键约束?

sql - 如何为 Oracle 中给定列中的每个不同值返回 1 行?

mysql - 尝试为该 SQL 查询找出可能的最佳索引

java - 使用参数从 JPQL 查询中选择全部

c# - MySQL asp.net 字符集不能正常工作

sql - 使用 SQL Server 设计可扩展的积分排行榜系统

MySQL 行或列