码迷,mamicode.com
首页 > 数据库 > 详细

sql语句聚合等疑难问题收集

时间:2015-03-18 15:50:34      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:

数据表中比如有20条数据
读取前5条数据
select top 5 * from 表 order by id desc
读取前5条数据后的5条数据
(就是查询前10条记录,取后面5个)
select top 5 * from 表 where 
id not in (select top 5 id from 表)

===================================================================================
SELECT TOP 11 * FROM (

SELECT ROW_NUMBER() OVER (ORDER BY StuID) AS RowNumber, *
FROM StuInfo) t
WHERE RowNumber >= 10
假设StuID是StuInfo表的主键“学号”。先按学号排序,生成行号,再返回行号>=10时的前11条记录,即行号为10~20的11条记录。
=======================================================================
select top 10 * from [table_name] where id in (select top 20 id from [table_name] order by id desc) order by id asc
这样显示出来的就是:从11到20条数据

sql语句聚合等疑难问题收集

标签:

原文地址:http://www.cnblogs.com/aiqingqing/p/4347062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!