概述
今天和同学一起谈论一个取指定行的sql命令。
比如说一个表有6条数据,现在让取第3,4条。
Code
declare @table table
(
id int identity(1,1),
Name varchar(10)
)
insert into @table
select '宋江'
union all
select '林冲'
union all
select '花容'
union all
select '李逵'
union all
select '鲁智深'
union all
select '武松'
select * from @table
where id in ( select top 4 id from @table ) and id not in
(
select top 2 id from @table
)
select top 2 * from
(
select top 4 * from @table order by id asc
) A
order by id desc
declare @table table
(
id int identity(1,1),
Name varchar(10)
)
insert into @table
select '宋江'
union all
select '林冲'
union all
select '花容'
union all
select '李逵'
union all
select '鲁智深'
union all
select '武松'
select * from @table
where id in ( select top 4 id from @table ) and id not in
(
select top 2 id from @table
)
select top 2 * from
(
select top 4 * from @table order by id asc
) A
order by id desc
性能分析后,第一种方法的执行效率要比第二个要好很多!!!
看下sql自己的分析结果。
第一个,查询开销21%
第二个,查询开销57%
转载于:https://www.cnblogs.com/redfox241/archive/2009/02/08/1386490.html
最后
以上就是爱笑路人为你收集整理的一个经典的sql取指定行数的学习的全部内容,希望文章能够帮你解决一个经典的sql取指定行数的学习所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复