- 浏览: 1507350 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (595)
- Java咖啡厅 (208)
- IT杂侃 (23)
- 程序员笑话 (7)
- 我的后现代文学 (1)
- WEB编程 (116)
- 软件评测 (8)
- 操作系统 (3)
- 炫目Ruby (2)
- 行业知识 (7)
- 我的动漫情结 (6)
- 其他 (8)
- Window DIY (6)
- 古文学 (3)
- 转载文章 (2)
- IT百科 (7)
- 动态网页Active (1)
- 文档 (1)
- 设计理论 (11)
- .NET 快速开发 (18)
- 英语学习 (6)
- 网站分析 (2)
- 开源软件 (4)
- 数据库 (28)
- 笔记 (4)
- 源代码共享 (8)
- IT人物 (2)
- 软件管理 (10)
- 小说创作 (0)
- 大众软件 (12)
- 网站评论 (3)
- 小虾乱说 (10)
- 游戏 (8)
- 心情 (3)
- 娱乐休闲 (2)
- Delphi编程 (1)
- PHP编程 (4)
- 中间件 (2)
- 移动开发 (2)
- Office应用 (2)
- Photoshop (1)
- Eclipse (5)
- 面试题 (1)
- 手机评测 (0)
- VBScript (1)
- WEB前端-EXT (3)
- 吐槽 (1)
- Java咖啡厅 Ibatis (1)
- javascript Ext (1)
- jquery ui (1)
- require (1)
- WEB编程 Javascript (1)
- jquery (1)
- Swing (1)
- 分布式 (1)
最新评论
-
zhangjihao:
28. 下面哪个Set是排序的? A. LinkedHas ...
Java面试题(选择题) -
zhangthe9:
ICMP报文被封装在IP包里,也就是说他是由IP协议承载的,从 ...
Java面试题(选择题) -
zhunengfei:
真的假的?
自已写的jquery ui框架 -
white_crucifix:
少年,发烫是所有智能手机的特点,而莫名发烫是所有安卓手机的特点 ...
【吐槽】三星手机的OS是一砣屎 -
suzu88:
试了一下,可以用。如果美化一下控件和窗体更有意思。
一个用XML构建Swing视图的框架
建立表:
CREATE TABLE [TestTable] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[FirstName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[LastName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[Country] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[Note] [nvarchar] (2000) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
CREATE TABLE [TestTable] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[FirstName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[LastName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[Country] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[Note] [nvarchar] (2000) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
插入数据:(100万条)
SET IDENTITY_INSERT TestTable ON
declare @i int
set @i=1
while @i<=1000000
begin
insert into TestTable([id], FirstName, LastName, Country,Note) values(@i, 'FirstName_XXX','LastName_XXX','Country_XXX','Note_XXX')
set @i=@i+1
end
SET IDENTITY_INSERT TestTable OFF
SET IDENTITY_INSERT TestTable ON
declare @i int
set @i=1
while @i<=1000000
begin
insert into TestTable([id], FirstName, LastName, Country,Note) values(@i, 'FirstName_XXX','LastName_XXX','Country_XXX','Note_XXX')
set @i=@i+1
end
SET IDENTITY_INSERT TestTable OFF
------------------------------------
分页方案一:(利用Not In和SELECT TOP分页)
当前页数从0编号
(默认ASC排序)
//当前页数=0时用SQL:
SELECT TOP 每页记录数 *
FROM TestTable
ORDER BY ID
当前页数从0编号
(默认ASC排序)
//当前页数=0时用SQL:
SELECT TOP 每页记录数 *
FROM TestTable
ORDER BY ID
//当前页数>0时用SQL:
SELECT TOP 每页记录数 *
FROM TestTable
WHERE (ID NOT IN
(SELECT TOP 每页记录数*当前页数 id //当前页数必须>0
FROM TestTable
ORDER BY id))
ORDER BY ID
**************************
用DESC排序时,需要改成:
//当前页数=0时用SQL:
SELECT TOP 每页记录数 *
FROM TestTable
ORDER BY ID DESC
//当前页数>0时用SQL:
SELECT TOP 每页记录数 *
FROM TestTable
WHERE (ID NOT IN
(SELECT TOP 每页记录数*当前页数 id //当前页数必须>0
FROM TestTable
ORDER BY id DESC))
ORDER BY ID DESC
-------------------------------------
分页方案二:(利用ID大于多少和SELECT TOP分页)效率最高!严重推荐
当前页数从0编号
(默认ASC排序)
SELECT TOP 每页记录数 *
FROM TestTable
WHERE (ID >=
(SELECT MAX(id)
FROM (SELECT TOP (每页记录数*当前页数)+1 id //当前页数从0编号
FROM TestTable
ORDER BY id) AS T))
ORDER BY ID
*************************
用DESC排序时,需要改成:
SELECT TOP 每页记录数 *
FROM TestTable
WHERE (ID <=
(SELECT MIN(id)
FROM (SELECT TOP (每页记录数*当前页数)+1 id //当前页数从0编号
FROM TestTable
ORDER BY id DESC) AS T))
ORDER BY ID DESC
================================================
不管用哪种方法,设置条件都在最里面的select里
如:
把id>=100 且 FirstName='FirstName_XXX'的记录分页
(默认ASC排序)
SELECT TOP 每页记录数 * FROM TestTable
WHERE (ID >=
(SELECT MAX(id)
FROM (SELECT TOP (每页记录数*当前页数)+1 id //当前页数从0编号
FROM TestTable
where id >=100 and FirstName='FirstName_XXX' //设置条件
ORDER BY id) AS T))
ORDER BY ID
把id>=100 且 FirstName='FirstName_XXX'的记录分页
(默认ASC排序)
SELECT TOP 每页记录数 * FROM TestTable
WHERE (ID >=
(SELECT MAX(id)
FROM (SELECT TOP (每页记录数*当前页数)+1 id //当前页数从0编号
FROM TestTable
where id >=100 and FirstName='FirstName_XXX' //设置条件
ORDER BY id) AS T))
ORDER BY ID
发表评论
-
死锁产生的原因
2018-07-26 19:58 1238产生死锁的四个必要条件: (1) 互斥条件:一 ... -
数据库知识汇总贴
2017-01-02 01:04 7241、给数据库表增加一列 我们经常会有一些需求 ... -
H2使用备忘
2014-03-08 10:27 14741. 自增ID id int identit ... -
用Swing做的H2管理器
2014-02-07 12:16 0这是我自己用Swing做的H2管理器, 因为H2的页面管理 ... -
SQLServer日期格式化的方法
2012-07-31 09:40 3133--SQLSERVER 日期格式转换 SELE ... -
SQLPlus操作手册
2012-07-30 10:16 1528SQL*Plus是与Oracle数据库进行交互的一个非常重要、 ... -
Oracle 11g完全手册
2012-07-27 16:53 15411. Oracle下载 Oracle的官网为:www. ... -
Oracle常用操作方法收集
2012-07-23 14:12 14191) 查看用户的连接状况 select use ... -
查看数据库日志的方法
2012-06-26 11:27 1520在SQL Server 7.0和SQL Server200 ... -
增加次要数据文件以减轻主要数据文件的压力操作说明
2012-06-10 20:45 2518每当在SQLServer中创建 ... -
SQLServer2005学习笔记
2012-06-02 13:50 1240SQLServer新增了varchar(max)、nvarch ... -
视图的概念
2011-09-25 10:28 1422视图的含义 从用户角 ... -
Oracle导入导出数据
2011-04-10 09:51 2101Oracle里面的导入导出的命令很简单就是exp/imp, ... -
Microsfot SQL Server 2005 精简版下载
2011-04-06 12:40 1923SQLServer的主服务: http://www.c ... -
数据库笔试题
2010-09-25 20:49 71221. 新建学生-课程数据库的三个表: 学生表:Student ... -
Oracle数据库新建方案
2010-08-21 13:21 15741、新建数据库 (1)在服务器端,用databas ... -
Oracle导出数据
2010-08-14 11:36 19801.1 exp 使用方法及 ... -
SQLServer 问题集锦
2010-08-08 08:51 1035今天要运行一个项目,用SQLServer 2000的,所以把本 ... -
修改MySQL的编码
2010-04-30 22:58 1265mysql的默认编码是latin,默认引擎是MyISAM。每次 ... -
SQLServer备忘录
2010-04-17 00:40 1134修改数据库表结构: alter table 表名 a ...
相关推荐
### Oracle SQL语句分页问题详解 #### 一、引言 在数据库查询操作中,分页是一项常用且重要的功能,特别是在数据量较大的情况下。它能够有效地提高用户体验,并减轻服务器负担。本文将针对Oracle数据库中的SQL分页...
需要注意的是,ROWNUM的计算是在SQL语句执行的过程中完成的,并且一旦为某一行分配了ROWNUM值后,这个值就不会再改变。这意味着,即使对表进行排序操作,ROWNUM的值也不会受到影响。 #### 2. 使用 ROWNUM 实现简单...
提供详细的sql语句,常用sql语句,sql语句的进阶过程
而Oracle的分页SQL语句更为简洁,适合在不支持存储过程或者简单场景下使用。但需要注意的是,Oracle的`ROWNUM`方式在处理有序数据时可能会有性能问题,因为`WHERE ROWNUM`条件可能无法充分利用索引。 在实际应用中...
用的是sql server2000 自带的NorthWind表,你要做的就是传一条普普通通的sql语句,思想是oracle 的伪列,但是sql server2000根本就没有伪列,于是我就想了个办法,哈哈。欢迎修改。如果大家有好的分页思想欢迎交流...
基于sql语句的分页,效率更高,此jar包包含常用分页格式 使用方法在jboss5的博客中
sqlserver分页查询语句;sqlserver分页查询语句;sqlserver分页查询语句;
本项目提供了一个Java源码工具,能够帮助用户便捷地将Oracle SQL语句转换为MySQL SQL语句。 Oracle SQL与MySQL SQL的主要差异在于以下几个方面: 1. **数据类型**:Oracle支持的数据类型如NUMBER、LONG、RAW等在...
几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。
关于SQL Server SQL语句查询分页数据的解决方案 在日常工作中,我们经常需要处理大量数据,并从中获取特定页面的数据。特别是在Web应用开发中,为了提高用户体验,通常会将数据进行分页显示。针对这一需求,本文将...
### 数据库分页SQL语句实现 在开发MIS系统或Web应用系统时,经常会遇到对数据库进行分页处理的需求。这是因为数据量庞大时,一次性加载所有数据会给系统带来很大的负担,同时也会影响用户体验。因此,分页技术成为...
### 在SQL Server中通过SQL语句实现分页查询 #### 一、背景介绍 在数据库应用开发中,分页查询是一种常见的技术手段,用于改善用户体验并提高系统性能。特别是当数据量庞大时,一次性加载所有数据到前端不仅会导致...
以下是三种常用的高效率SQL语句分页方法: 1. **基于行号的分页(利用自增ID)** 这种方法适用于表中存在自动增长的ID字段。首先,定义两个变量Page和PageCount,Page表示当前页数,PageCount表示每页的数据条数。...
SQL语句的分页通用代码实现是将数据集分割成多个部分,每次只加载一部分(即一页)到前端进行显示。这种方式在大数据量的查询中尤为重要,因为它避免了一次性加载所有数据可能导致的性能问题。 标题中的“sql语句写...
### JDBC分页SQL语句详解 #### 一、引言 在数据库操作中,分页查询是非常常见且重要的一个功能。对于大型应用而言,一次性加载大量数据不仅会消耗过多资源,还可能导致用户体验下降。因此,合理地进行分页处理显得...
由于LINQ延迟执行,直到你真正遍历结果集时才会执行SQL语句。 ```csharp foreach (var customer in pagedQuery) { // 处理每个customer对象 } ``` 5. **优化性能**:在某些情况下,为了提高性能,你可能需要...
例如,在SQL Server中,获取第10页,每页显示10条记录的真分页SQL语句可能如下: ```sql SELECT * FROM ( SELECT *, ROW_NUMBER() OVER(ORDER BY SomeColumn) AS RowNum FROM YourTable ) AS TmpTable WHERE...
使用SQL语句实现通用分页查询,支持模糊查询等。
本篇将深入探讨SQL Server实现分页查询的语句及其工作原理。 首先,我们要明白SQL Server分页查询的基本思想:一次查询只返回所需页面的数据,而不是一次性获取所有数据,这样可以减少网络传输量,减轻服务器压力,...
本文将深入探讨如何在C#\book项目中,利用SQL语句来实现数据分页。 ### SQL分页基本原理 SQL分页主要通过限制查询结果的数量来实现。在SQL Server中,常用的分页方法有两种:一种是使用`OFFSET`和`FETCH`关键字;...