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 ...
随机推荐
- 关于cookie使用的一些问题
保存cookie后提取出来发现字符串是被编码过的,需要decodeURIComponent进行下解码才可以 设置cookie setCookie(c_name, value, expiredays) ...
- zoj 2974 Just Pour the Water矩阵快速幂
Just Pour the Water Time Limit: 2 Seconds Memory Limit: 65536 KB Shirly is a very clever girl. ...
- Linux System Programming 学习笔记(六) 进程调度
1. 进程调度 the process scheduler is the component of a kernel that selects which process to run next. 进 ...
- gridview中的相关事件操作
原文发布时间为:2008-07-27 -- 来源于本人的百度文章 [由搬家工具导入] using System;using System.Data;using System.Configuration ...
- node--http小爬虫&事件模块
//http小爬虫 var http=require('http') var cheerio=require('cheerio') var url='http://www.imooc.com/lear ...
- 标准C程序设计七---73
Linux应用 编程深入 语言编程 标准C程序设计七---经典C11程序设计 以下内容为阅读: <标准C程序设计>(第7版) 作者 ...
- Perl语言入门--3--perl的控制结构
表达式真假值总结: 表达式不一定是逻辑表达式,但一定要得出真假值 假值:逻辑值为假 值为0 字符串为空 列表为空 undef 其他情况为真 1.if {} elsif {} else {} 2.u ...
- VUE之命令行报错:Expected indentation of 4 spaces but found 6
使用vue时候,经常被一大片警告惊呆了,这是webpack默认的语法检查插件ESLint在做警告, [ESLint是一个语法规则和代码风格的检查工具,可以用来保证写出语法正确.风格统一的代码] 但是我 ...
- Codeforces Gym101502 I.Move Between Numbers-最短路(Dijkstra优先队列版和数组版)
I. Move Between Numbers time limit per test 2.0 s memory limit per test 256 MB input standard inpu ...
- (3)unity3d 地形
在Hierarchy(层次) 建一个Terrain(地形) Terrain属性按钮 第一个按钮:抬升与下陷地面.单击抬升地形,同时按住shift下陷地形 第二个按钮:绘制高度.同时按住shift绘制等 ...