m0_53237896 2021-06-22 19:07 采纳率: 0%
浏览 176

Oracle的rownum怎么单独进行删除

select rownum,sc.* from score sc

可以查出来表中的伪列

为什么没有办法使用rownum进行删除

delete from score where rownum = 1;

可以正常使用加载没有报错,但是无法直接删除

  • 写回答

1条回答 默认 最新

  • 唯一的小彬哥 2021-11-17 17:47
    关注

    你的数据是存在数据文件中的,然而rownum 是根据检索出来的顺序给你加上去的。rownum和物理存储位置是没有任何关联的,你要删除的话,不管你是通过索引还是全表扫描都必须要获取到对应的物理地址。所以rownum是无法删除的,如果要删除,你可以通过字段rowid。通过这个可以进行删除。

    评论

报告相同问题?