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

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

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

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

当前页: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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118272.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL(笔记)

    MySQL(笔记)数据库总览有时候查的数据错乱,可以重启MySQL关系型数据库(SQL)MySQL,Oracle,SQLServer,SQLite,DB2,…关系型数据库通过外键关联来建立表与表之间的关系非关系型数据库(NOSQL)notonlyRedis,MongoDB,…非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定DBMS数据库管理系统(DataBaseManagementSystem)数

    2022年5月19日
    36
  • visio安装教程2013_visio2018安装教程

    visio安装教程2013_visio2018安装教程下载地址:https://download.csdn.net/download/qq_33705529/11082285说到办公绘图软件,最强大的莫过于微软新推出的visio2013简体中文版,该软件可以帮助用户快速绘制工作中常用的业务流程图、组织结构图、项目管理图、网络…

    2022年9月28日
    4
  • APK反编译之smali[通俗易懂]

    APK反编译之smali[通俗易懂]APK、Dalvik字节码和smali文件大家都应该知道APK文件其实就是一个MIME为ZIP的压缩包,我们修改ZIP后缀名方式可以看到内部的文件结构,例如修改后缀后用RAR打开鳄鱼小顽皮APK能看到的是(GooglePlay下载的完整版版本):   Where’sMyWater.zip\asset\            &lt;资源目录1:asse…

    2026年1月18日
    4
  • Linux中curl命令详解

    Linux中curl命令详解curl CommandLineU 即在命令行中利用 URL 进行数据或者文件传输 https curl haxx se 这是 curl 的官网 可以从上面的官网地址下载最新的 curl 版本 同时可以在官网看出 curl 支持的各种协议 如 HTTP HTTPS IMAP IMAPS LDAP LDAPS POP3 POP3S 等 使用途径

    2025年11月22日
    4
  • 第十七篇:实例分析(1)–初探WDDM驱动学习笔记(八)

    第十七篇:实例分析(1)–初探WDDM驱动学习笔记(八)

    2022年1月23日
    67
  • oracle用户修改密码权限_oracle提示表或视图不存在

    oracle用户修改密码权限_oracle提示表或视图不存在今天想要修改一个用户的密码,但是在执行完alteruser语句后,提示用户不存在。查看dba_users视图后,该用户的确是存在的,但是注意到一个细节是用户名是小写的,其他的用户名都是大写。在群内咨询过大神后,原来是在创建用户时,把用户名用双引号包起来了,如果没有用双引号,数据库会自动将用户名改为大写,但是用了双引号后,则保持小写。解决方法为,若创建过程用引号包起来,则在后续的使用过程中,也需要

    2022年7月28日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号