Oracle删除指定条件下的数据

Oracle删除指定条件下的数据

DELETE
FROM
        table
WHERE
        filed >= '20110709'
    AND rownum <= 5

想要删除满足条件filed >= '20110709'的前5条数据,请问可以这样写吗?测试了效果上看是可以的。

那你通过order by排序,然后获取前5条的主键,这个查询可以作为子查询,然后通过主键删除即可

可以,这个语句就是删除查询的前五条数据,如果需要根据什么排序删除前五条那就需要通过子查询先排序,再删除