Home >Database >Mysql Tutorial >sql 取两值之间的数据方法(例:100-200之间的数据)

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

WBOY
WBOYOriginal
2016-06-07 18:00:261432browse

这里只列举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速度最快,请高手补充说明,谢谢
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn