- 浏览: 77041 次
- 性别:
- 来自: 杭州
文章分类
最新评论
select t2.* from (select t1.*, rownum rn from (select * from tb_courseinfo order by datatime desc )t1 where rownum <= 150 )t2 where rn >100
可能由于datatime 有重复导致取出来可能数量不对
解决办法有两个1.不用时间排序 排序要有唯一值才可以 可以用id
2.可以索引不建分区索引建全局索引
1. 最好还是利用分析函数
row_number() over ( partition by col1 order by col2 )
比如想取出100-150条记录,按照tname排序
select tname,tabtype from (
select tname,tabtype,row_number() over ( order by tname ) rn from tab
)
where rn between 100 and 150;
2. 直接使用rownum 虚列
select tname,tabtype from (
select tname,tabtype,rownum rn from tab where rownum <= 150
)
where rn >= 100;
使用序列不能基于整个记录集合进行排序,如果指定了order by子句,排序的的是选出来的记录集的排序.
经过测试,在100万条数据的表中,检索数据的时候,方法2的速度要比方法1要快的.
排序分页
说明:Oracle下用rownum进行分页时 很容易出现排序的错乱。
但多套一层select 就能很好的解决该问题,特此记录,语句如下:
select t2.* from (select t1.*, rownum rn from (select * from tb_courseinfo order by rownum desc )t1 where rownum <= 150 )t2 where rn >100
可能由于datatime 有重复导致取出来可能数量不对
解决办法有两个1.不用时间排序 排序要有唯一值才可以 可以用id
2.可以索引不建分区索引建全局索引
1. 最好还是利用分析函数
row_number() over ( partition by col1 order by col2 )
比如想取出100-150条记录,按照tname排序
select tname,tabtype from (
select tname,tabtype,row_number() over ( order by tname ) rn from tab
)
where rn between 100 and 150;
2. 直接使用rownum 虚列
select tname,tabtype from (
select tname,tabtype,rownum rn from tab where rownum <= 150
)
where rn >= 100;
使用序列不能基于整个记录集合进行排序,如果指定了order by子句,排序的的是选出来的记录集的排序.
经过测试,在100万条数据的表中,检索数据的时候,方法2的速度要比方法1要快的.
排序分页
说明:Oracle下用rownum进行分页时 很容易出现排序的错乱。
但多套一层select 就能很好的解决该问题,特此记录,语句如下:
select t2.* from (select t1.*, rownum rn from (select * from tb_courseinfo order by rownum desc )t1 where rownum <= 150 )t2 where rn >100
发表评论
-
创建DBlinksql
2013-08-16 10:48 702create database link jjlink con ... -
导入备份dmp文件
2013-04-09 13:40 805impdp xx/xxDIRECTORY=SRS_111 D ... -
job相关
2013-04-01 18:17 638创建job DECLARE JOBID NUMBER; B ... -
oracle中导出excel
2013-03-29 17:09 840create or replace directory MY_ ... -
数据库设计中的命名规范(转)
2013-03-22 22:58 711数据库设计中的命名规 ... -
ora-00600
2013-01-26 15:37 824select t.FILE# from V$datafile ... -
某一段时间,在小于五秒钟内出现2次以上
2013-01-15 18:42 601查询 某一段时间,a在小于五秒钟内出现2次以上 with ... -
SQL优化策略
2013-01-08 18:35 6861、 尽量少用IN操作符, ... -
oracle索引建立
2012-12-18 15:10 735alter system修改的是参数文件,所有用户都会生效 a ... -
数据库常用不使用索引情况
2012-12-03 15:24 8831.使用<>,!=,^= 不使用索引可以使用 in ... -
oracle查看某个表索引状态sql
2012-11-30 14:31 1279select index_name,status from d ... -
ORA-00257错误解决
2012-11-23 18:53 1022通过sqlplus命令连接数据库 show parameter ... -
海量数据查询快速估计总数方法
2012-11-15 11:19 957估算大概值可以分析执行计划信息 sql: EXPLAIN PL ... -
mysql和oracle批处理运行sql文件和oracle导入dmp文件
2012-11-07 18:26 1268mysql批处理运行sql: net stop mysql n ... -
oracle实现group_connect
2012-11-07 18:16 8431.10g及以后版本使用wm_concat 2. wm_c ... -
高效循环插入大数据量测试
2012-11-07 18:15 688declare idx number(22): ... -
JDBC读取新插入Oracle数据库Sequence值的5种方法
2012-08-27 23:33 0Oracle的sequence实现非常灵活,所以也带来一些易用 ... -
DBCP object created by following code was nerver closeed
2012-08-27 23:31 0DBCP object created by followi ... -
修改SGA无法启动
2012-08-27 23:30 700解决步骤 假如没有备份init.ora 1.dos 输入 ... -
Oracle数据库查询高效分页
2012-08-27 23:27 7501.select * 2. from (select * ...
相关推荐
本教程将深入探讨如何在Qt应用中实现SQLite数据库的数据分页显示。 首先,我们需要在Qt项目中集成SQLite数据库支持。在Qt Creator中,新建一个Qt Widgets Application项目,然后在.pro文件中添加`QT += sql`来启用...
**Qt编写的数据库分页demo**是一个用于展示如何在Qt应用程序中实现高效、用户友好的数据库数据分页功能的示例项目。这个demo的核心在于它能够处理大量的数据,如千万级记录,同时提供流畅的用户体验,包括上一页、...
### 各数据库分页语法支持 #### 概述 在数据库操作中,分页查询是一项非常常见的需求。分页能够帮助我们有效地管理大量的数据记录,提高数据查询的效率和用户体验。不同的数据库系统提供了不同的分页机制,本文将...
数据库分页 用存储过程实现的 数据库分页 用存储过程实现的 数据库分页 用存储过程实现的 数据库分页 用存储过程实现的
常用数据库分页sql(),1.oracle数据库分页;2.DB2数据库分页;3.SQL Server 2000数据库分页;4.SQL Server 2005数据库分页5.MySQL数据库分页
### 数据库分页技术详解 #### 一、引言 在大数据时代,高效的数据管理和查询技术变得尤为重要。其中,数据库分页技术作为一种提高用户体验、优化数据检索效率的重要手段,在各类应用系统尤其是Web应用中得到了广泛...
在ASP(Active Server Pages)与SQL Server的组合中,实现数据库分页显示是一项常见的任务,尤其是在构建大型数据驱动的Web应用程序时。分页能够有效地管理大量数据,避免一次性加载所有记录,提高页面加载速度,同时...
在这个"易语言测试源码,易语言数据库分页显示"的压缩包中,我们关注的是如何在易语言中实现数据库数据的分页显示功能。 数据库分页显示是常见的数据处理技术,尤其在网页或应用程序中,当数据量较大时,为了提高...
数据库分页是数据库管理系统中用于实现用户界面分段显示大量数据的一种技术。它允许用户逐步浏览数据集,而不需要一次性加载所有记录,从而提高用户体验并减少服务器资源的消耗。本篇文章将详细介绍如何在不同的...
在IT行业中,数据库分页显示是一项常见的功能,尤其在网页应用和桌面软件中,用于处理大量数据时,分页能够有效提高用户体验,避免一次性加载过多数据导致系统性能下降。本示例是基于易语言(EasyLanguage)和MySQL...
几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。
尤其在数据量较大的情况下,limit与offset值较大时,会导致数据库进行大量不必要的数据扫描,从而消耗大量的系统资源和时间。 针对这个问题,文章提出了基于Oracle数据库的索引扫描分页技术。该技术利用索引的有序...
基于VB6+ADO+ListView制作的一个数据库分页显示程序是使用VB6开发的一款数据库分页显示程序,使用ADO(ActiveX Data Objects)技术访问数据库,并使用ListView控件来显示数据库中的数据。下面是该程序的详细知识点...
一、此演示使MS Sql Server 2000默认安装的的数据库northwind,使用CUSTOMERS表中的数据做为演示,不用自已到处找表或自已建表 二、此Struts分页是一次性读取本次分页的数据,翻页时不用再读数据库中的数据。...
最完美的sql2005数据库分页,可以随便用的~!嘎嘎最完美的sql2005数据库分页,可以随便用的~!嘎嘎最完美的sql2005数据库分页,可以随便用的~!嘎嘎最完美的sql2005数据库分页,可以随便用的~!嘎嘎
在IT行业中,数据库分页是一种常见的数据检索策略,特别是在处理大量数据时,它能有效地提高应用性能并优化用户体验。Oracle(ORCL)数据库是企业级广泛使用的数据库管理系统,提供了强大的分页功能。本文将深入探讨...
### 数据库分页方法 在处理大量数据时,分页技术是提高用户体验、优化系统性能的重要手段之一。本文将深入探讨数据库分页的基本概念、原理以及实现方式,并通过具体的SQL语句示例来帮助读者更好地理解和掌握这一...
3. **使用`ORDER BY`和`LIMIT`结合**:如果需要排序,确保排序列有索引,否则全表扫描可能导致性能下降。 4. **存储过程**:可以创建存储过程来封装分页逻辑,减少重复代码,提高效率。 四、分页策略 1. **静态分页...
数据库分页是数据库管理系统中一个重要的查询技术,用于在大量数据中实现高效的检索。当用户在网页或应用程序中浏览数据时,通常不希望一次性加载所有记录,而是分页显示,这样可以减少网络传输的数据量,提高用户...