`
wanqiuhappy
  • 浏览: 1344 次
  • 性别: Icon_minigender_2
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

四种数据库(SqlServer/Oracle/Mysql/Sybase)查询前N条数据

 
阅读更多
MSSQL查询前10条的方法为:


select top X * from table_name  --查询前X条记录,可以改成需要的数字。
select top n * from (select top m * from table_name order by column_name ) a order by column_name desc  --查询第N到M条记录。常用的分页也是这种方式。
例如常用的分页方式:
declare @page int
declare @row int
set @page=2 --页数
set @row=3  --每页展示行数
select top (@row) * from (select top (@row*@page) * from table_name order by id  ) a order by id desc  --最基本的分页方式,改变@row和@page达到分页效果




MYSQL查询前10条的方法:
select * from table_name limit 0,10  --通常0是可以省略的,直接写成  limit 10。0代表从第0条记录后面开始,也就是从第一条开始
select * from table_name limit 1,10  --则为从第一条后面的记录开始展示,也就是说从第二条开始。



ORACLE查询前十条的方法:
select * from table_name where rownum<X --X为前多少条记录
select * from (select a.*,a.rownum rn from (select * from table_name) a where a.rownum<M) where rn>n --这句就是从n到m也的数据,分为三层结构
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics