表没有主建,,
只有两个字段
时间,备注
如何删除第5条记录,用时间排序急急急
只有两个字段
时间,备注
如何删除第5条记录,用时间排序急急急
解决方案 »
- 如何写一个存储过程,它调用其他带参数的存储过程。
- 在linux如何用C调用oracle以数组作为参数的存储过程,谢谢!
- 在Win2003SerE下安装oracle10gforWin32过程中的问题
- 单表数据到达一个什么程度须分表
- 关于2个进程同时操作一条数据的问题。
- 现在做的一个项目需要通过SQL*Loader进行程序导入问题,分数不够可以再加!或者当面酬谢也行!
- 紧急求助各路ORACLE大侠,启动过程的ORA-01031的问题
- 再次请教一个SQL语句
- 用Configuration Assistant 创建Repository出错?
- Redologfile丢失了怎么办~~??
- ubuntu8.1 oracle11g
- 10G表空间DEF_TAB_COMPRESSION选项的问题
rowid的格式:表空间号,数据文件好,表编号,所在数据块号,所在块内的编号。
不过这样你要查很多数据字典才能确定“第5条”的位置。不知道是插入先后顺序的第5条,还是物理存储位置的第5条,还是你那个时间字段意义上的先后上的第五条???
SELECT 时间,备注,ROW_NUMBER() OVER (PARTITION BY 时间 ORDER BY 备注) FROM 表名
oracle里有Row_number()函数吗???
delete from table where (select rownum from table order by time) in (select '5' from dual);
delete from scott.emp t
where rowid = (select c2
from (select rownum c1, rowid c2, t.* from scott.emp t) a
where c1 = 1)
SELECT * FROM (SELECT id from bb order by id) where rownum <3;如何取第M条到第N条之间的
select *
from (select id,name,row_number() over(order by id) rn
from user) t
where t.rn>=4 and t.rn <=6删除M条到第N条之间的记录
delete from tb1
where rowid in
(SELECT rowid FROM (SELECT rowid,id,VAL,row_number() over (order by VAL) rn from TB1 )
where rn >2 and rn<6);
和
delete from table where (select rownum from table order by time) in (select '5' from dual);不知哪个效率更高点??????