第1个回答 2008-05-05
从table表中取出第 n 条到第 m 条的记录:
SELECT TOP m-n+1 *
FROM tablename
WHERE (id NOT IN (select top n-1 id from tablename))
id 为table 表的关键字
你的要求是删除物理位置的3-6行
那就应该是
delete from tablename
where id in (select top 4 id
from tablename
where (id not in (select top 2 id from tablename)))
由于你说的是工资表数据量不会很大,所以虽然使用了not in关键字 执行效率影响也应该不错本回答被提问者采纳
第2个回答 2008-05-04
DELETE FROM TABLE1
WHERE ID IN
(
SELECT X.ID FROM
(SELECT TOP 6 ID FROM TABLE1)X
WHERE X.ID NOT IN
(SELECT TOP 3 ID FROM TABLE1)Y
)
ID表示其中的关键字
第3个回答 2008-05-06
delete from 工资表 where 纪录号 between 3 and 6
物理删除要继续使用PACK命令
第4个回答 2008-05-04
delete from tabname where substr(to_char(date,"YYYYMMDD"),6,2) between '03' and '06'