要删除一张数据表中的第5、6条数据,用sql语句实现(id不是连续的),表名:Tb_num
各位帮个忙,谢谢了!
各位帮个忙,谢谢了!
解决方案 »
- SQL Server 安装程序遇到以下错误:路径中具有非法字符
- 有什么方法可以提高把数据从Excel导入Sql server.
- 关于高级复制技术的疑问--等待高手
- sql 未能找到 ID 为 104 的数据库。可能该数据库尚未激活,也可能正在转换过程中
- 为什么我写的函数直接用 select Fun1() 调用可以 但是如果是 select * from Table where TableName=fun1()就不行
- 无法删除 表
- sql sever数据无法修改,显示是灰色,添加的时候也无法添加
- sql面试遇到的一个问题.
- 这种sql怎么写?
- 怎样能得到生成表时所用的SQL语句?
- 远程数据库连接如何设置???
- 一个简单的SQL语句求大神。
那就用top自己拼吧,精华贴里有
delete from tb where id in (select top 6 id from tb where id not in (select top 5 s from tb order by id asc))
as
(select * ,px=row_number()over(order by (select 1))
from tb)
delete tt
where px between 5 and 6
是SQL 2005新增的排序函数.
意是为结果集从1开始递增.
同理还有rank,ntile,意义不同,对于同名次 的
;with aa as
(
select *,row_number() over(order by getdate()) as rw
from tb
)
delete from aa
where rw between 5 and 6
能用between.... and就不用in
delete from tb where id between 5 and 6
select * from test where ID in(
select top 2 ID from test where ID not in (
select top 4 ID from test
))