MySQL 分页
SELECT SQL_NO_CACHE SQL_CALC_FOUND_ROWS * FROM asp_mst LIMIT 10,20;//查询表中20条数据,从第11行开始 SELECT FOUND_ROWS();//返回查询表的总行数
例:
JS部分:
var PageCount = 0;//页数 var pageSize=20;//每页显示多少 // 検索処理 function SetSiteList(curPageIndex){ var s = (curPageIndex - 1) * pageSize ;//从第几行开始取 //サイトリスト取得実装 var params={ vo:{ startIndex: s, pageSize: pageSize } }; $.ajax({ type: "POST", contentType: "application/json; charset=UTF-8", url: baseUrl + "Services/DataService.svc/GetMeasuresList", data: JSON.stringify(params), dataType: "json", success:function(result){ if(result.d.strState=="0"){//Success //设置总行数,当前页 SetPageArea(result.d.intRowsCount, curPageIndex); }else{//Error SetPageArea(0, 0); } }, error:function(XmlHttpRequest,textStatus, errorThrown) { SetPageArea(0, 0); } }); } // データ総件数、ページの設定 function SetPageArea(dataTotal, curPageIndex){ PageCount = parseInt(dataTotal / pageSize) if (dataTotal % pageSize > 0){ PageCount = PageCount + 1; } // 総件数の設定 $("#DataTotal").html(dataTotal); // ページ数 $("#PageCount").html(PageCount); $("#CurPage").html(dataTotal>0 ? curPageIndex : 0);//当前页 }
SQL部分:
SELECT SQL_NO_CACHE SQL_CALC_FOUND_ROWS * FROM asp_mst LIMIT @startIndex,@pageSize; SELECT FOUND_ROWS();