龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Sql Server开发 >

sql 取两值之间的数据方法(例:100-200之间的数据)

时间:2014-06-16 02:19来源:网络整理 作者:网络 点击:
分享到:
这里只列举3种我测试的方法,还有别的方案就由高手补上了,3种方案的效率也不竞相同,我一直认为not in效率不好,但在这里使用not in速度最快,请高手补充说明,谢谢
题:取表table中100条-200条之间数据

方法1:临时表
代码如下:

select top 200 * into #aa from table order by time-- 将top m笔插入 临时表
set rowcount 100
select * from #aa order by time desc

--drop table #aa --删除临时表



方法2:
代码如下:

select top 100 * from
(select top 200 * from table order by time asc) a
order by time desc



方法3:not in
代码如下:

select top 100 * from v_company where (
id not in
(select top 100 id from v_company order by id asc)
) order by id asc



这里只列举3种我测试的方法,还有别的方案就由高手补上了,3种方案的效率也不竞相同,我一直认为not in效率不好,但在这里使用not in速度最快,请高手补充说明,谢谢
收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接