写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。... 写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。 展开
 我来答
flyingFish211
2012-03-28 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:1.1亿
展开全部
通用的
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
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cashback081
2012-03-28 · TA获得超过140个赞
知道小有建树答主
回答量:223
采纳率:0%
帮助的人:222万
展开全部
可不可以先取出表A的 top 40 数据。

然后把top 40虚拟表 order by ID desc ... 把ID倒序后 取倒序后的 top 10 条记录 就是31-40条了吧...

菜鸟随便说说.. 轻喷
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
军哥会武
2012-03-28 · TA获得超过582个赞
知道小有建树答主
回答量:149
采纳率:0%
帮助的人:159万
展开全部
select top 10 * from 表 where id not in(select top 30 id from 表 order by asc )order by asc
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
茂昂2N
2012-03-28 · TA获得超过126个赞
知道小有建树答主
回答量:267
采纳率:0%
帮助的人:150万
展开全部
用id排序 之后在用rowid取出 31 - 40 条记录。
select * from (select A.*,a.rowid from A order by id asc) where rowid>30 and rowid< 41
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式