数据库分页查询
2016-03-01 16:23
302 查看
oracle分页查询:
rowid和rownum的区别:
rowid和rownum都是虚列,但含义完全不同。rowid是物理地址,用于定位oracle中具体数据的物理存储位置,而rownum则是sql的输出结果排序。通俗的讲:rowid是相对不变的,rownum会变化,尤其是使用order by的时候。
rowid 用于定位数据表中某条数据的位置,是唯一的、也不会改变
rownum 表示查询某条记录在整个结果集中的位置, 同一条记录查询条件不同对应的 rownum 是不同的而 rowid 是不会变的
使用rowid和rownum组合实现分页查询
oracle查询结果集的前十条数据:
mysql实现分页查询:
select * from (select a.*, rownum rn from (select * from calendar_info where uin = '136727' order by createtime desc) a where rownum <= endIndex) where rn > startIndex
rowid和rownum的区别:
rowid和rownum都是虚列,但含义完全不同。rowid是物理地址,用于定位oracle中具体数据的物理存储位置,而rownum则是sql的输出结果排序。通俗的讲:rowid是相对不变的,rownum会变化,尤其是使用order by的时候。
rowid 用于定位数据表中某条数据的位置,是唯一的、也不会改变
rownum 表示查询某条记录在整个结果集中的位置, 同一条记录查询条件不同对应的 rownum 是不同的而 rowid 是不会变的
使用rowid和rownum组合实现分页查询
SELECT * FROM (SELECT RID FROM (SELECT R.RID, ROWNUM LINENUM FROM (SELECT ROWID RID FROM calendar_info where uin = '136727' order by createtime desc) R WHERE ROWNUM <= endIndex) WHERE LINENUM >= startIndex) T1, calendar_info T2 WHERE T1.RID = T2.ROWID;
oracle查询结果集的前十条数据:
select * from calendar_info where seqno > (select max(seqno) - 10 from calendar_info); select * from (select * from calendar_info order by seqno desc) where rownum < 10;
mysql实现分页查询:
select * from (select * from calendar_info where uin = '136727') t limit startIndex, pageSize
相关文章推荐
- oracle常用sql函数和语句
- mac安装MongoDB
- mysql 允许远程IP连接, 并查看所有用户的所有权限
- nginx+memcache增加全站缓存系统
- oracle常用sql函数和语句
- Oracle数据库数据迁移到MySQL数据库时间格式问题
- 在Windows安全模式下运行MySQL的方法
- Oracle sysdate
- MyBatis(3.2.3) - Dynamic SQL
- mysql存储过程
- oracle删除大数据表整表后整理
- 安装使用Mongoose配合Node.js操作MongoDB的基础教程
- 使用PLSQL导入导出数据库
- yum install mysql-service 安装失败
- Redis和Memcached如何存储PHP数组
- Oracle实现分页查询的SQL语法汇总
- oracle树状查询-connect by
- 企业版Oracle 11g服务器安装详细步骤——图文教程
- 浅谈SQL Server中的三种物理连接操作(HASH JOIN MERGE JOIN NESTED LOOP)
- Oracle基本教程