欢迎投稿

今日深度:

不同数据库oracle mysql SQL Server DB2 infomix sybase分页

不同数据库oracle mysql SQL Server DB2 infomix sybase分页查询语句,infomixsybase


在不同数据库中的使用的分页查询语句:

当前页:currentpage
页大小:pagesize


1. Oracle数据库

 select * from (select A.*,rownum rn from ( QUERY_SQL ) A )  where rn <= ((currentpage+1)*pagesize) and rn > (currentpage*pagesize)

注:QUERY_SQL为查询sql语句。

select * from (select rownum rn,id from TABLENAME  where rownum <=((currentpage+1)*pagesize) ) A  where A.rn >= (currentpage*pagesize)

2. Infomix数据库

select skip currentpage first pagesize * from TABLENAME
 
3. DB2数据库

 select * from (select 字段1,字段2,字段3,rownumber() over(order by 排序用的列名 asc) as RN from 表名) as A1 where A1.RN between (currentpage*pagesize) and ((currentpage+1)*pagesize) 
 或
 select * from (select rownumber() over(order by id asc ) as rowid from table where rowid <=((currentpage+1)*pagesize) )   where rowid > (currentpage*pagesize)
 
 
4. SQL Server数据库

 select top pagesize *
  from TABLENAME
 where COLLUMN_NO not in
       (select top currentpage*pagesize COLLUMN_NO from TABLENAME order by COLLUMN_NO)
 order by COLLUMN_NO
 
5. Sybase数据库

Sybase 12.5.3版本支持top查询,或使用set rowcount N查询头N条数据
另外采用临时表:
select rowid=identity(12), column_name into #TEMPTABLE from TABLENAME
select column_name  from #TEMPTABLE where rowid >(currentpage*pagesize) and rowid < (currentpage*pagesize+pagesize)

6. MySQL数据库

 SELECT * FROM TABLE1 LIMIT (currentpage*pagesize),pagesize


Oracle,SQL_server,MySQL,DB2,Access,Sybase6个数据库那个最适合下面的情况

SQL Server和MySQL够用了,只不过ASP和ASP.NET语言要用前者,PHP和JSP语言要用后者。
 

小生新入门,可以不可以简略的比较下oracle、SQL Server、DB2、sybase、mySQL五款主流数据系统优缺点,搞b/s的

如果是大型门户网站多半用以下数据库

oracle db2 sybase
可以建成关系复杂的数据仓库

稳定 ,有专业维护 ,数据还易于分析
,一旦出了问题可以得到及时专业指导或灾难恢复

小型的数据库网站多办用
mysql sqlserve
主要体积小
易学易用
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/3290.html NewsArticle 不同数据库oracle mysql SQL Server DB2 infomix sybase分页查询语句,infomixsybase 在不同数据库中的使用的分页查询语句: 当前页:currentpage 页大小:pagesize 1. Oracle数据库 select * from (select A.*,rownum...
相关文章
    暂无相关文章
评论暂时关闭