>데이터 베이스 >MySQL 튜토리얼 >sql 取两值之间的数据方法(例:100-200之间的数据)

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

WBOY
WBOY원래의
2016-06-07 18:00:261430검색

这里只列举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速度最快,请高手补充说明,谢谢
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.