写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。
写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。...
写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。
展开
4个回答
展开全部
通用的
select *
from (select A.*, (select count(1) from A where id <= t.id) as rk from A t) t2
where rk between 31 and 40
select *
from (select A.*, (select count(1) from A where id <= t.id) as rk from A t) t2
where rk between 31 and 40
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可不可以先取出表A的 top 40 数据。
然后把top 40虚拟表 order by ID desc ... 把ID倒序后 取倒序后的 top 10 条记录 就是31-40条了吧...
菜鸟随便说说.. 轻喷
然后把top 40虚拟表 order by ID desc ... 把ID倒序后 取倒序后的 top 10 条记录 就是31-40条了吧...
菜鸟随便说说.. 轻喷
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select top 10 * from 表 where id not in(select top 30 id from 表 order by asc )order by asc
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用id排序 之后在用rowid取出 31 - 40 条记录。
select * from (select A.*,a.rowid from A order by id asc) where rowid>30 and rowid< 41
select * from (select A.*,a.rowid from A order by id asc) where rowid>30 and rowid< 41
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询