mysql 较为高效的分页
直接上代码
DaoImpl:
/**
* 开发转让页面展示 ,查询搜索数据,而且分页展示
* @param zrdp 搜索条件封装对象
* @return
*/
@SuppressWarnings("unchecked")
public List<Zrdpxx> showAllZrdpxxPageindex(Zrdpxx zrdp,int pageindex,String keys) {
String
sql ="select * from zrdpxx where dpxx_htaiztai = 2";
if(zrdp!=null){
if(zrdp.getDpxxId()!=null&&!zrdp.getDpxxId().equals("")){
sql+=" and dpxx_id =" +zrdp.getDpxxId();
}
if(zrdp.getDpxxQyu()!=null&&!zrdp.getDpxxQyu().equals("-选择区域-")){
sql+=" and dpxx_qyu = '"+zrdp.getDpxxQyu()+"'";
}
if(zrdp.getDpxxPyetai()!=null&&!zrdp.getDpxxPyetai().equals("")){
sql+=" and dpxx_pyetai = '"+zrdp.getDpxxPyetai()+"'";
}
if(zrdp.getDpxxZyetai()!=null&&!zrdp.getDpxxZyetai().equals("0")&&!zrdp.getDpxxZyetai().equals("null")){
sql+=" and dpxx_zyetai = '"+zrdp.getDpxxZyetai()+"'";
}
if(zrdp.getBigmji()!=0&&zrdp.getSmlmj()!=-1){
sql += " and dpxx_mji between "+zrdp.getSmlmj()+" and " +zrdp.getBigmji();
}
//開始时间和结束时间均有值
if(zrdp.getBeginTime()!=null&&!zrdp.getBeginTime().equals("")&&zrdp.getEndTimes()!=null&&!zrdp.getEndTimes().equals("null")){
sql +=" and dpxx_fbusjian between '"+zrdp.getBeginTime()+"' and '"+zrdp.getEndTimes()+"'";
}
//仅仅有開始时间
if(zrdp.getBeginTime()!=null&&!zrdp.getBeginTime().equals("")&&zrdp.getEndTimes()==null){
sql +=" and dpxx_fbusjian between '"+zrdp.getBeginTime()+"' and now()";
}
if(!("标题 地址 电话").equals(keys)){
sql +=" and (dpxx_bti like '%"+keys+"%' or tel like '%"+keys+"%' or dpxx_jtidzhi like '%"+keys+"%')";
}
sql +=" order by dpxx_fbusjian desc";
}
return getSession().createSQLQuery(sql).addEntity(Zrdpxx.class).setFirstResult((pageindex-1)*20).setMaxResults(20).list();
}
// public int getallzrdpcounts() {
// Object oo = getSession().createSQLQuery("select count(dpxx_id) from zrdpxx where dpxx_htaiztai =2").uniqueResult();
// return Integer.parseInt(oo.toString());
// }
//
/**
* 开发转让页面展示 ,查询满足条件的开发转让店铺信息
* @param zrdp 搜索条件封装对象
* @return
*/
@SuppressWarnings("unchecked")
public int showAllZrdpxx(Zrdpxx zrdp,String keys) {
String
sql ="select count(dpxx_id) from zrdpxx where dpxx_htaiztai = 2";
if(zrdp!=null){
if(zrdp.getDpxxId()!=null&&!zrdp.getDpxxId().equals("")){
sql+=" and dpxx_id =" +zrdp.getDpxxId();
}
if(zrdp.getDpxxQyu()!=null&&!zrdp.getDpxxQyu().equals("-选择区域-")){
sql+=" and dpxx_qyu = '"+zrdp.getDpxxQyu()+"'";
}
if(zrdp.getDpxxPyetai()!=null&&!zrdp.getDpxxPyetai().equals("")){
sql+=" and dpxx_pyetai = '"+zrdp.getDpxxPyetai()+"'";
}
if(zrdp.getDpxxZyetai()!=null&&!zrdp.getDpxxZyetai().equals("0")&&!zrdp.getDpxxZyetai().equals("null")){
sql+=" and dpxx_zyetai = '"+zrdp.getDpxxZyetai()+"'";
}
if(zrdp.getBigmji()!=0&&zrdp.getSmlmj()!=-1){
sql += " and dpxx_mji between "+zrdp.getSmlmj()+" and " +zrdp.getBigmji();
}
//開始时间和结束时间均有值
if(zrdp.getBeginTime()!=null&&!zrdp.getBeginTime().equals("")&&zrdp.getEndTimes()!=null&&!zrdp.getEndTimes().equals("null")){
sql +=" and dpxx_fbusjian between '"+zrdp.getBeginTime()+"' and '"+zrdp.getEndTimes()+"'";
}
//仅仅有開始时间
if(zrdp.getBeginTime()!=null&&!zrdp.getBeginTime().equals("")&&zrdp.getEndTimes()==null){
sql +=" and dpxx_fbusjian between '"+zrdp.getBeginTime()+"' and now()";
}
if(!("标题 地址 电话").equals(keys)){
sql +=" and (dpxx_bti like '%"+keys+"%' or tel like '%"+keys+"%' or dpxx_jtidzhi like '%"+keys+"%')";
}
}
Object oo = getSession().createSQLQuery(sql).uniqueResult();
return Integer.parseInt(oo.toString());
}
Action:
/**
* 开发转让展示 ,追加对象搜索
* @return 集合
*/
public String getZrdpxxByzr(){
if(pid==1){
allcounts = zrDao.showAllZrdpxx(zrdpxx,keys);
}
forkaifazrlist = zrDao.showAllZrdpxxPageindex(zrdpxx, pid, keys);
kfmap.put("allkaifazr",allcounts);
kfmap.put("allkaifazrPageindex", forkaifazrlist);
if(forkaifazrlist!=null){
return "showallsuc";
}
return "fail";
}
js:
function showws(){
zrshopids =$.trim($("#txt_infoid").val());
var isnums = isNaN(zrshopids);
var yanzhengs = /^\s*$/;
var isspaces =yanzhengs.test(zrshopids);
if(isnums){
zrshopids=-1;
}
if(isspaces){
zrshopids = "";
}
if($("#txt_infoid").val().indexOf(".")!=-1){
alert("亲。请输入正确的店铺ID!");
}
else{
$("#showtable tr:not(:first)").remove();
$("#bottompage").html("");
$.post("zrAction!getallDpxx.action",{"pid":pageindex,"zrdpxx.dpxxPyetai":$("#ddl_yetaicate").val().substring(3,7),"zrdpxx.dpxxHtaiztai":$("#ddl_after").val(),"zrdpxx.dpxxZyetai":$("#ddl_yetai").val(),"zrdpxx.dpxxQtaiztai":$("#ddl_before").val(),"zrdpxx.dpxxHtaiztai":$("#ddl_after").val(),"zrdpxx.dpxxSfouzdin":$("#istopno").val(),"tel":$.trim($("#txt_key").val()),"dpidsss":zrshopids,"showwhotel":$("#showwhotel").val()},
function(data){
if(data["zrdxpxxPageindexCount"].length<=0){
alert("没有符合当前条件的数据!");
}
else{
$.each(data["zrdxpxxPageindexCount"],function(i,list){
$tr=$("<tr></tr>");
$td12 =$(" <td align='center' valign='top' style='border-right:0;'><input type='checkbox' name ='row_checkbox' id ='checkDo' value='"+list.dpxxId+"'/></td>");
$td1=$("<td align='center' valign='top'><a href='TransferManager24.1.jsp?dpidsss="+list.dpxxId+"' target='_blank'>"+list.dpxxId+"</a></td>");
$td2 =$("<td align='center' valign='top'>"+list.dpxxFbusjian.substring(0,10)+"</td>");
switch(list.dpxxXxilyuan){
case 1:
$td3 =$("<td align='center' valign='top'>客户</td>");
break;
case 4:
$td3 =$("<td align='center' valign='top'>外网</td>");
break;
case 2:
$td3 =$("<td align='center' valign='top'>报纸</td>");
break;
case 3:
$td3 =$("<td align='center' valign='top'>扫街</td>");
break;
case 5:
$td3 =$("<td align='center' valign='top'>其它</td>");
break;
}
$td4 =$("<td align='center' valign='top'>"+list.dpxxZyetai+"</td>");
$td5 =$("<td align='center' valign='top'>"+list.dpxxQyu+"</td>");
$td7 =$("<td align='center' valign='top'>"+list.dpxxBti+"</td>");
$td8 =$("<td align='center' valign='top'>"+list.dpxxJtidzhi+"</td>");
$td13=$("<td align='center' valign='top'>"+list.mytel+"</td>");
if(list.dpxxSfouzdin==1){
$td9 =$("<td align='center' valign='top'>是</td>");
}
if(list.dpxxSfouzdin==2){
$td9 =$("<td align='center' valign='top'>否</td>");
}
if(list.dpxxQtaiztai==1){
$td10 =$("<td align='center' valign='top'>显示</td>");
}
if(list.dpxxQtaiztai==2){
$td10 =$("<td align='center' valign='top'>不显示</td>");
}
switch(list.dpxxHtaiztai){
case 1:
$td11 =$("<td align='center' valign='top'>屏蔽</td>");
break;
case 2:
$td11 =$("<td align='center' valign='top' style='color:green'>开发</td>");
break;
case 3:
$td11 =$("<td align='center' valign='top' style='color:blue'>重点</td>");
break;
case 4:
$td11 =$("<td align='center' valign='top' style ='color:red'>售后</td>");
break;
case 5:
$td11 =$("<td align='center' valign='top' style='color:#A757A8'>案例</td>");
break;
}
$tr.append($td1).append($td2).append($td3).append($td4).append($td5).append($td7).append($td8).append($td13).append($td9).append($td10).append($td11).append($td12);
$("#showtable").append($tr);
});
pagesize = data["zrdxpxxAllCount"]%maxresult==0?
parseInt(data["zrdxpxxAllCount"]/maxresult):parseInt(data["zrdxpxxAllCount"]/maxresult)+1;
var $uppage = $("<a href='javascript:go(true)'><<上一页    </a>");
var $span =$("<span style='font-size:12px'>共"+data["zrdxpxxAllCount"]+"条  第"+pageindex+"页  总"+pagesize+"页</span>");
var $downpage =$("<a href='javascript:go(false)'>    下一页>>    </a>");
var $select = $("<select onchange='javascript:gotos()' id='gotosid'></select>");
for(var i = 1;i<=pagesize;i++){
$select.append("<option value="+i+">第"+i+"页</option>");
}
$("#bottompage").append($uppage).append($span).append($downpage).append($select);
$("#gotosid").find("option[value='"+pageindex+"']").attr("selected","selected");
}
});
}
}
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTU5ODUyOQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
mysql 较为高效的分页的更多相关文章
- MySQL 百万级分页优化(Mysql千万级快速分页)
以下分享一点我的经验 一般刚开始学SQL的时候,会这样写 : SELECT * FROM table ORDER BY id LIMIT 1000, 10; 但在数据达到百万级的时候,这样写会慢死 : ...
- Oracle、MySql、SQLServer数据分页查询
看过此博文后Oracle.MySql.SQLServer 数据分页查询,在根据公司的RegionRes表格做出了 SQLserver的分页查询语句: 别名.字段 FROM( SELECT row_nu ...
- Oracle、MySql、SQLServer 数据分页查询
最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借 ...
- 如何优化Mysql千万级快速分页,limit优化快速分页,MySQL处理千万级数据查询的优化方案
如何优化Mysql千万级快速分页,limit优化快速分页,MySQL处理千万级数据查询的优化方案
- MySQL大数据量分页查询方法及其优化
MySQL大数据量分页查询方法及其优化 ---方法1: 直接使用数据库提供的SQL语句---语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N---适 ...
- MySQL 百万级分页优化(Mysql千万级快速分页)(转)
http://www.jb51.net/article/31868.htm 以下分享一点我的经验 一般刚开始学SQL的时候,会这样写 复制代码 代码如下: SELECT * FROM table OR ...
- [MySQL优化案例]系列 — 分页优化
通常,我们会采用ORDER BY LIMIT start, offset 的方式来进行分页查询.例如下面这个SQL: SELECT * FROM `t1` WHERE ftype=1 ORDER BY ...
- 转Oracle、MySql、SQLServer 数据分页查询
最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借 ...
- 用Java实现异构数据库的高效通用分页查询功能
不同数据库的分页查询语句有着较大区别,其中MySQL数据的limit offset语法最为简单,而SQL Server数据库和Oracle数据库的分页就比较复杂了. 网上常见的SQL Server和O ...
随机推荐
- BZOJ4556 [Tjoi2016&Heoi2016]字符串 【后缀数组 + 主席树 + 二分 + ST表】
题目 佳媛姐姐过生日的时候,她的小伙伴从某东上买了一个生日礼物.生日礼物放在一个神奇的箱子中.箱子外边写了 一个长为n的字符串s,和m个问题.佳媛姐姐必须正确回答这m个问题,才能打开箱子拿到礼物,升职 ...
- P2134 百日旅行 (斜率优化,DP)
题目链接 Solution 斜率优化\(DP\). 今天下午才打的第一道题 QwQ... \(90\) 分很简单,一个简单的递推. 令 \(f[i]\) 为最后一天旅游的花费, \(g[i]\) 为最 ...
- window maven安装(六)
Maven 实战系列之在Windows上安装Maven Maven是一个优秀的构建工具(类似于 Ant, 但比 Ant 更加方便使用),能帮助我们自动化构建过程,从清理.编译.测试到生成报告,再到打包 ...
- bzoj 3533 [Sdoi2014]向量集 线段树+凸包+三分(+动态开数组) 好题
题目大意 维护一个向量集合,在线支持以下操作: "A x y (|x|,|y| < =10^8)":加入向量(x,y); "Q x y l r (|x|,|y| & ...
- 【HDOJ5971】Wrestling Match(二分图,并查集)
题意:有n个人,m场比赛,x个人为good player,y个人为bad player, 每场比赛两个人分分别为good和bad,问good和bad是否会冲突 1 ≤ N≤ 1000,1 ≤M ≤ 1 ...
- 【BZOJ1040】骑士(环套树,树形DP)
题意:有一张N点N边的图,点有点权.相连的两个点不能同时取,问使点权和最大怎么取. 思路:如果是N点N-1边就是一棵树,即”没有上司的舞会“ 现在多了一条边,就是环套树的森林.我们枚举删哪条边,删后就 ...
- 【NOIP2016练习】T1 string (计数)
题意: 思路: ; ..]of int64; n,k,i:longint; ans,x,y:int64; s,t:ansistring; function c(x,y:longint):int64; ...
- spring MVC学习之二
什么是Spring MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MV ...
- github每次push提交都要输入账号密码
问题产生的原因是在克隆的时候使用的是https的方式或者用一些特殊的指令来克隆的github项目源,如 golang里的go get github.com/...... 没次提交push的时候都会提示 ...
- 优雅的使用ImageGetter
https://daihanglin.github.io/2017/10/13/imageGetter/ 1. 使用ImageGetter的场景 Android中用于显示文本的控件为textVie ...