当前位置: 技术问答>java相关
如何使用SQL分页?
来源: 互联网 发布时间:2015-11-20
本文导语: 我在这里搜索了一下,没有发现可以用SQL分页的。 他们的分页都是用SQL选择出所有的记录(在这里一些记录在这一页是没有用的记录) 这浪费了服务器内存和DBMS的执行效率,我想知道如何在SQLServer或者其他的数据库...
我在这里搜索了一下,没有发现可以用SQL分页的。
他们的分页都是用SQL选择出所有的记录(在这里一些记录在这一页是没有用的记录)
这浪费了服务器内存和DBMS的执行效率,我想知道如何在SQLServer或者其他的数据库中,就是说标准的SQL3中是否可以实现像在MYSQL中的 LIMIT 语句的功能。
他们的分页都是用SQL选择出所有的记录(在这里一些记录在这一页是没有用的记录)
这浪费了服务器内存和DBMS的执行效率,我想知道如何在SQLServer或者其他的数据库中,就是说标准的SQL3中是否可以实现像在MYSQL中的 LIMIT 语句的功能。
|
http://expert.csdn.net/Expert/topic/1064/1064726.xml?temp=.2898523
|
我觉得记录分页应该在sql中就实现
然后将用户要的那一页的数据从sql服务器传过来即可
而不是将所有数据都先传过来再在界面中分页
这样数据多的话性能会太差
你只要调用以下sql语句即可实现在sql中返回你要的那一页的数据
假如你要的是每页10条,现在显示第5页
select top 10 * from yourTable where indexID not in
(select top 40 indexID from yourTable)
即可
(index 为可标志记录唯一性的列)
其它界面上的控制就很好做了
然后将用户要的那一页的数据从sql服务器传过来即可
而不是将所有数据都先传过来再在界面中分页
这样数据多的话性能会太差
你只要调用以下sql语句即可实现在sql中返回你要的那一页的数据
假如你要的是每页10条,现在显示第5页
select top 10 * from yourTable where indexID not in
(select top 40 indexID from yourTable)
即可
(index 为可标志记录唯一性的列)
其它界面上的控制就很好做了