天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php mssql 分頁SQL語句優(yōu)化 持續(xù)影響

復(fù)制代碼 代碼如下:
<?php
/**
* @Filename :page.sql.class.php
* @CreatTime :2009-01-06
* @Descrition :此類為SQL語句處理類。
* @UpdateTime-1 :null
* @Version :jswweb1.0.0
* @Author :fkedwgwy
* @Dome :
$sql//SQL語句
$allcount//總記錄數(shù)
$pagesize//頁面顯示記錄條數(shù)
$page//當(dāng)前頁
$sqlc= new sqlpage($sql,$allcount,$pagesize,$page);
$sql=$sqlc->getsql();
優(yōu)化后的語句:
SELECT * FROM (SELECT TOP 10 * FROM (SELECT TOP 270 Lsh,Ztm,Dyzrsm,Dyzzfs,Cbsm,Cbny,Ssh,Fbsl,jcsl from ts_gcb where Ssh like 'C%' order by Lsh asc) AS inner_tbl ORDER BY Lsh DESC) AS outer_tbl ORDER BY Lsh asc
*/
class sqlpage{
function sqlpage($sql,$allcount,$pagesize,$page){
$this->sql= $sql;//查詢語名
$this->allcount= intval($allcount);//總記錄數(shù)
$this->pagesize= intval($pagesize);//頁面大小(顯示記錄數(shù))
$this->page= intval($page);//當(dāng)前頁
$this->getpage();
$this->gettop();
}
function getpage(){ //獲取當(dāng)前頁
$this->allpage=ceil( $this->allcount/$this->pagesize);//去當(dāng)前小數(shù)的最大整數(shù)
if ($this->page=="" or $this->page>$this->allpage or $this->page<0 or $this->page==0){
$this->page2=1;
}else{
$this->page2=intval($this->page);//將頁碼轉(zhuǎn)換為數(shù)字
}
}
function gettop(){ //獲取子查詢2的TOP大小
if ($this->page2<$this->allpage){
$this->top2=$this->pagesize;
}else{
$this->top2=$this->allcount-$this->pagesize*($this->allpage-1);
}
}
/* function getsql(){//獲取SQL語句
$this->s=preg_replace("/select/i","",$this->sql);
$this->top1=$this->pagesize*$this->page2;
$this->sql1="SELECT TOP $this->top1 $this->s";
if (strpos($this->sql,"asc")){//升序
$this->sql_e="select * from ( select TOP $this->top2 * FROM ( $this->sql1 ) as aSysTable ORDER BY $this->order DESC ) as bSysTable ORDER BY $this->order ASC";
}else
//$this->sql_e="select * from ( select TOP $this->top2 * FROM ( $this->sql1 ) as aSysTable ORDER BY $this->order DESC ) as bSysTable ORDER BY $this->order ASC";
if (strpos($this->sql,"desc")){//降序
$this->sql_e="select * from ( select TOP $this->top2 * FROM ( $this->sql1 ) as aSysTable ORDER BY $this->order asc ) as bSysTable ORDER BY $this->order desc";
}else{//不處理排序的情況
$this->sql_e="select * from ( select TOP $this->top2 * FROM ( $this->sql1 ) as aSysTable ORDER BY $this->order DESC ) as bSysTable ORDER BY $this->order ASC";
}
// echo $this->sql_e;
return $this->sql_e;
}*/
function getsql()
{
$sql=$this->sql;
$this->top1=$this->pagesize*$this->page2;
$orderby = stristr($sql, 'ORDER BY');
if ($orderby !== false) {
$sort = (stripos($orderby, ' desc') !== false) ? 'desc' : 'asc';
$order = str_ireplace('ORDER BY', '', $orderby);
$order = trim(preg_replace('//bASC/b|/bDESC/b/i', '', $order));
}
$sql = preg_replace('/^SELECT/s/i', 'SELECT TOP ' . ($this->top1) . ' ', $sql);
$sql = 'SELECT * FROM (SELECT TOP ' . $this->top2 . ' * FROM (' . $sql . ') AS inner_tbl';
if ($orderby !== false) {
$sql .= ' ORDER BY ' . $order . ' ';
$sql .= (stripos($sort, 'asc') !== false) ? 'DESC' : 'ASC';
}
$sql .= ') AS outer_tbl';
if ($orderby !== false) {
$sql .= ' ORDER BY ' . $order . ' ' . $sort;
}
echo $sql;
return $sql;
}
}
?>

php技術(shù)php mssql 分頁SQL語句優(yōu)化 持續(xù)影響,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人免费手机在线观看视频 | 国内精品视频一区二区在线观看 | 国内精品蜜汁乔依琳视频 | 91欧洲在线视精品在亚洲 | 歪歪漫画羞羞漫画国产 | 亚洲字幕在线观看 | 成年性生交大片免费看 | 伊人大香线蕉影院在线播放 | 亚洲AV综合99一二三四区 | 亚洲色大成网站www久久九九 | 日韩AV爽爽爽久久久久久 | 国产网红主播精品福利大秀专区 | 亚洲精品高清AV在线播放 | 女教师二十三岁 | 欧美成人免费观看久久 | 久久国产精品久久国产精品 | 久久www成人看片 | 国产欧美第一页 | 亚洲成人网导航 | 中国老太60old mantv| 东京热百度影音 | 拔擦拔擦8X永久华人免费播放器 | 国产爱豆剧果冻传媒在线 | 国产精品亚洲精品久久国语 | 东北成人社区 | 花蝴蝶在线高清视频观看免费播放 | 少妇无套内谢久久久久 | 亚洲国产在线视频中文字 | 午夜勾魂曲| 51精品国产AV无码久久久密桃 | 亚洲欧美色综合影院 | 国产成人99久久亚洲综合精品 | 色妺妺免费影院 | 亚洲精品婷婷无码成人A片在线 | 久久这里的只有是精品23 | 99久久久国产精品免费调教 | 国产精品久久人妻无码网站一区无 | 国产精品久久久久影院免费 | 亚欧视频在线观看 | 亚洲精品无码葡京AV天堂 | 95国产精品人妻无码久 |