cakephp2.X多表聯(lián)合查詢join及使用分頁查詢的方法
本文實例講述了cakephp2.X多表聯(lián)合查詢join及使用分頁查詢的方法。分享給大家供大家參考,具體如下:
格式化參數(shù):
public function getconditions($data){
$this->loadModel("Cm.LoginHistory");
$conditions = array();
foreach ($data as $key=>$val){
if($key=='start_date'){
$conditions['LoginHistory.logintime >=']=trim($val);
}elseif ($key=='end_date'){
$conditions['LoginHistory.logouttime <=']=trim($val);
}elseif ($key=='selectvsoftid' and $val !=''){
$conditions['LoginHistory.LOGINSUBSYSTEM LIKE']='%'.trim($val).'%';
}elseif ($key=='username' and $val !=''){
$conditions['LoginHistory.USERNAME LIKE']='%'.trim($val).'%';
}elseif ($key=='vdevicename' and $val !=''){
$conditions['LoginHistory.WINDOWNAME LIKE']='%'.trim($val).'%';
}elseif ($key=='selectvsoftid' and $val !=''){
$conditions['LoginHistory.PHDEVICENAME LIKE']='%'.trim($val).'%';
}
}
return $conditions;
}
分頁查詢:
$fields = array('LoginHistory.windowname','LoginHistory.loginsubsystem','VirtualDevice.PHDEVICEID','LoginHistory.userid', 'VirtualDevice.SYSTYPEID','UserInfo.USERNAME','"SUM"(LoginHistory.LOGOUTTIME-LoginHistory.LOGINTIME) moument','UserInfo.USERNAME','DeviceInfo.DEVICENAME');
$group=array('LoginHistory.windowname', 'LoginHistory.loginsubsystem', 'LoginHistory.userid','UserInfo.USERNAME','DeviceInfo.DEVICENAME','VirtualDevice.SYSTYPEID','VirtualDevice.PHDEVICEID');
$this->paginate = array('conditions'=>$conditions,'fields'=>$fields,'group'=>$group,'limit'=>9,'joins' => array(
array(
'alias' => 'UserInfo',
'table' => 'SMM_USERINFO',
'type' => 'LEFT',
'conditions' => ' LoginHistory.USERID=UserInfo.USERID ',
),
array(
'alias' => 'VirtualDevice',
'table' => 'ET_NMVIRTUALDEVICEINFO',
'type' => 'LEFT',
'conditions' => ' LoginHistory.WINDOWNAME=VirtualDevice.DEVICENAME ',
),
array(
'alias' => 'DeviceInfo',
'table' => 'ET_NMDEVICEINFO',
'type' => 'LEFT',
'conditions' => ' VirtualDevice.PHDEVICEID=DeviceInfo.DEVICEID ',
),
));
$LoginHistory = $this->paginate('LoginHistory');
$this->set('loginhistory',$LoginHistory);
更多關(guān)于php框架相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php優(yōu)秀開發(fā)框架總結(jié)》、《codeigniter入門教程》、《ThinkPHP入門教程》、《Zend FrameWork框架入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
php+jquery+html實現(xiàn)點擊不刷新加載更多的實例代碼
下面小編就為大家?guī)硪黄猵hp+jquery+html實現(xiàn)點擊不刷新加載更多的實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08
laravel Validator ajax返回錯誤信息的方法
今天小編就為大家分享一篇laravel Validator ajax返回錯誤信息的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
PHP+ajaxfileupload+jcrop插件完美實現(xiàn)頭像上傳剪裁
在做項目的時候,經(jīng)常需要一些會員系統(tǒng)相關(guān)的內(nèi)容,比如頭像的上傳與裁剪等等,下面將這塊內(nèi)容分享給大家2014-06-06

