六合图库大全马报彩图|六合图库网址大全|
Jquery中文网 www.mibzvo.tw
Jquery中文网 >  脚本编程  >  java  >  正文 用标准的SQL语句实现查询记录分页

用标准的SQL语句实现查询记录分页

发布时间:2019-10-10   编辑:www.mibzvo.tw
jquery中文网为您提供用标准的SQL语句实现查询记录分页等资源,欢迎您收藏本站,我们将为您提供最新的用标准的SQL语句实现查询记录分页资源
<script>ec(2);</script>
在绝大多数的应用中,返回大量的符合条件的记录是司空见惯的,最典型的莫过于搜索了。在搜索的应用中,用户给出搜索条件,服务器查出符合条件的记录。但往往搜索会返回大量的数据记录,如果在网页中,往往是通过分页的方式来实现,页面提供诸如上一页,下一页等等按钮来实现分页。
现在主要有以?#24405;?#20013;方式来实现分页:
1.EJB的Find方法
2.在显示第一页前将所有的记录放在collection对象中,后续的各页都在内存中取。
3.每一页都到数据库作一次重复的查询,然后将符合条件的记录显示出来。
4.保存前几页的搜索结果在内存中(经常使用到的),后续的记录(这些数据是多数用户都没有耐心看的)再通过连数据库取得。
5.其他各种cache机制。
我们可以根据实?#26159;?#20917;来选择适合自己的方法,我给大家介绍一个通过标准的SQL语句来得到符合条件的数据。如从第10到20条的符合条件(where语句中的)的记录。通过这种方法取得记录有一个必要条件,必须有一个能够标识记录顺序的字段,如id,time等等。下面我为大家演示一个例子:
查询t_table表中所有记录第10到20条,按id排序。
SQL语句为:
SELECT * FROM t_table t1 WHERE (SELECT count(*) FROM t_table t2 WHERE t2.id < t1.id ) >= 10 AND (SELECT count(*) FROM t_table t2 WHERE t2.id < t1.id ) < 20
又如查询t_table表中key='123'第10到20条的记录,按id排序。
SELECT * FROM t_table t1 WHERE (SELECT count(*) FROM t_table t2 WHERE t2.id < t1.id AND t2.key = '123') >= 10 AND (SELECT count(*) FROM t_table t2 WHERE t2.id < t1.id AND t2.key = '123') < 20 AND t1.key = '123'
当然条件中的id可以换为任?#25991;?#34920;识记录顺序的字段。

您可能感兴趣的文章:
PostgreSQL从菜鸟到专家系列教程(5)什么是数据库管理系统
DB2实验教程:数据查询
php的mssql扩展SQL查询中文字段名的解决方法
mysql开启慢查询以检查查询慢的语句
MongoDB高级查询实例分享
SQLite3数据库操作学习笔记
去除重复数据的SQL语句
Oracle递归查询举例
mysql字符串截取函数SUBSTRING的用法
Mysql 多表联合查询效率分析及优化

六合图库大全马报彩图
重庆时时彩龙虎怎么追 18年3D历史走势图 pk10技巧规律 五星定位胆 广东十一选五开奖走势图 世界杯冠亚军投注 APP彩计划90cn 八戒中特网l 求猫咪App的网站是多少呀 竞彩倍投