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 ...
随机推荐
- [POJ3728]The merchant(tanrjan_lca + DP)
传送门 比着题解写还错... 查了两个小时没查出来,心态爆炸啊 以后再查 ——代码(WA) #include <cstdio> #include <cstring> #incl ...
- NOIP2017赛前模拟(5):总结
题目: 1.刮刮卡 已知n(n<=1000000)张刮刮卡按顺序排列,刮开可以获得B元现金和B个积分,购买刮刮卡需要A元,某人若按照顺序刮开的话··当B的总和小于A时便会停止刮卡(即花出去的钱多 ...
- 瞄一眼CopyOnWriteArrayList(jdk11)
CopyOnWriteArrayList是ArrayList线程安全的变体.使用写时复制策略进行修改操作. 与之前版本较明显的区别是,jdk11中用来保护所有设值方法(mutator)的Reentra ...
- OpenJudge 东方14ACM小组 / 20170123 02 岛屿
总时间限制: 40000ms 单个测试点时间限制: 4000ms 内存限制: 128000kB 描述 从前有一座岛屿,这座岛屿是一个长方形,被划为N*M的方格区域,每个区域都有一个确定的高度.不 ...
- jquery 日期插件
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- U3D层的运用
在操作 LayerMask 时常令一些初学者摸不着头脑下面简单说一下层的开关方法:1.首先引入'|'.'&'.'~'的概念与(交集):10000001 & 10000100 == 10 ...
- LeetCode OJ——Word Ladder
http://oj.leetcode.com/problems/word-ladder/ 图的最短路径问题,可以用最短路径算法,也可以深搜,也可以广搜. 深搜版本: 第一次写的时候,把sum和visi ...
- 推荐一款基于 AI 开发的 IDE 插件,帮助提升编码效率
最近在浏览技术社区的时候,发现了一款神奇 IDE 插件,官网称可以利用 AI 帮助程序员写代码,一下子吸引了我的好奇心.赶紧下载下来使用一番,感觉确实蛮神奇,可以火速提升编程效率. 这款插件叫做 ai ...
- va_list 简介
原文:http://blog.sina.com.cn/s/blog_590be5290100qhxr.html va_list是一个宏,由va_start和va_end界定. typedef char ...
- 笔记-迎难而上之Java基础进阶4
内部类创建多线程 //匿名内部类创建多线程 public class InnerClassThread{ public static void main(String[] args){ //回忆一下之 ...