之前在网上看到有人问 Derby SQL 分页实现的问题,网上有人给出这样的解决方案,SQL 如下:
SELECT * FROM (
SELECT ROW_NUMBER() OVER() AS rownum, myLargeTable.*
FROM myLargeTable
)
AS tmp
WHERE rownum > 200000 AND rownum <= 200005;
其实,这样的分页查询,性能不理想,我试过在 300W 数据量中采用这种分页方式,需要 20~30秒之久;
其实 Derby 10.6 以上版本有更好的分页支持,直接给出 SQL 实现如下:
SELECT * FROM YOUR_TABLE
OFFSET ? ROWS
FETCH NEXT ? ROWS ONLY;
稍微解释一下:
OFFSET ? ROWS - 是指跳过 ? 条记录
FETCH NEXT ? ROWS ONLY - 是指抓取下一个 ? 条记录
这样分页性能可以提升至毫秒级速度,
希望对遇到同样需求的朋友有帮助···
其实 Derby 是很棒的纯 Java 实现的开源数据库,据说现在最大能支持到 700GB 的数据量,而且正在向 TB 级别进发···
分享到:
相关推荐
Derby的SQL语法手册,包含增删改查,表、存储过程、索引等操作的官方说明。从此操作Derby不用求人。
第一:derby集成到eclipse的两种方法 第二:derby辅助工具SQuirreL SQL Client的使用
朋友手工制作,derby数据库和其他数据库的转换工具,简易实用。高手可直接用命令提示符便可使用该工具
01. Getting Started with Derby - 10.4.pdf 02. Derby Reference Manual - 10.4.pdf 03. Derby Developer's Guide - 10.4.pdf 04. Tuning Derby - 10.4.pdf 05. Derby Server and Administration Guide - 10.4.pdf ...
Derby数据库完整压缩包,解压缩即可使用,bat文件在bin文件目录下,驱动程序在lib目录下。 Apache Derby非常小巧,核心部分derby.jar只有2M,所以既可以做为单独的数据库服务器使用,也可以内嵌在应用程序中使用。...
spring boot quartz 定时任务, quartz资源包、含22个sql文件
收集的学习资料,包括:Derby数据库(V10.9)用户手册(PDF版),用 Apache Derby 进行 Java 数据库开发,用 Apache Derby 进行数据库开发,03开源项目(三)嵌入式数据库Apache Derby(1)(开发指南).pdf ,Apache Derby ...
Eclipse插件Derby安装 Derby插件开发
derby_plugin derby_ui_plugin derby Eclipse插件
Derby的系统表结构,列出Derby的系统表及表结构
derby.jar activation.jar jspsmartupload.jar及各种包
derby,jtds,mysql,oracle,sql2000,sql2005的jdbc数据库驱动
derby嵌入式数据库连接问题
Mysql+Oracle+SqlServer+Access+derby jdbc驱动包
derby embedded模式默认是不需要用户名和密码的,但是用户验证这一需求是多么正常啊,怎么让derby embedded模式支持用户验证呢?本教程将带领你一步步揭开迷雾。Joy原创!
Derby用户手册 最好的了解derby的资源
真正的Derby新手教程,Derby安装,创建数据库,在Java程序中使用Derby 本人原创
由于本人最近使用derby数据库,需要在eclipse中连接,网上查询资料说需要用到这2个插件才能连接,根据网友提示去官网找了半天没有找到下载地址,为了方便其他人所以我把这2个插件上传到此,方便查找包括derby_core_...
jdk内置数据库,有兴趣的可以玩一玩。文件分别为:db-derby-10.10.1.1-bin.zip、derby_core_plugin_10.2.2.485682.zip、derby_ui_plugin_1.1.0.zip。
derby 数据库 使用的例子 derby 数据库 使用的例子