好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Laravel框架執行原生SQL語句及使用paginate分頁的方法

Laravel框架執行原生SQL語句及使用paginate分頁的方法

熱門標簽:萍鄉商鋪地圖標注 合肥企業外呼系統線路 電信外呼系統多少錢一個月 代理打電話機器人 太原400電話申請流程 宿州正規外呼系統軟件 神龍斗士電話機器人 桂陽公司如何做地圖標注 企業400電話辦理多少費用

本文實例講述了Laravel框架執行原生SQL語句及使用paginate分頁的方法。分享給大家供大家參考,具體如下:

1、運行原生sql

public function getList($data){
//獲取前端傳過來的參數
  $user = $data['userId'];
  $office = $data['officeId'];
  $key = $data['oneKeySearch'];
//進行模糊搜索和聯合查詢
  $where = 'and 1=1 ';
  if($key!=null) {
    $where.= ' and ( a.code like "%' . $key . '%"';
    $where.= ' or b.name like "%' . $key . '%"';
    $where.= ' or c.name like "%' . $key . '%")';
  }
//對前端傳回的字段進行判斷,如果不為空則執行條件查詢
  if($user!=null){
    $user='and a.userId='.$user;
  }
  if($office!=null){
    $office='and a.officeId='.$office;
  }
//自定義原生sql語句,%s可以傳參數到sql語句中,格式如下:
  $sqlTmp=sprintf('select a.id,a.code,a.attendanceRate,a.statisticTime,
            b.`realName` as userName,c.`name` as officeName
            from xxxa1
            LEFT JOIN xxx2 b ON a.userId=b.id
            LEFT JOIN xxx3 c ON a.officeId=c.id
    where a.deleted_at is null and 1=1 %s %s %s ORDER BY a.code
    ', $where,$office,$user);
//執行SQL語句
  $results = DB::select($sqlTmp);
//返回結果
  return $results;
}

2、運行查詢構建器

public function getList($data){
//獲取前端傳過來的參數
  $user = $data['userId'];
  $office = $data['officeId'];
  $key = $data['oneKeySearch'];
/*
 * 1、表格使用別名:直接是 “表名 as table1" ,(下面是xxx1 as a)
 * 2、左連接:DB::table('表1')
 *        ->leftJoin('表2', '表1.id', '=', '表2.外鍵關聯')
 * 3、因為使用了軟刪除,所以在查詢的時候要加上 ->whereNull('a.deleted_at')
 * 4、使用 DB::raw方法創建一個原生表達式,寫進要查詢的字段名稱
 *    ->select(DB::raw('a.id,a.code,b.`realName` as userName,c.`name` as officeName'))
 *5、使用orderBy進行排序
 *
 */
     $data=DB::table('biz_attendance_sta as a')
       ->leftJoin('sys_user as b', 'b.id', '=', 'a.userId')
       ->leftJoin('sys_office as c', 'c.id', '=', 'a.officeId')
      ->select(DB::raw('a.id,a.code,a.attendanceRate,a.statisticTime,
              b.`realName` as userName,c.`name` as officeName'))
       ->whereNull('a.deleted_at')
       ->orderBy('a.code', 'desc');
 //使用 if(!empty(xxx)){},來判斷前端傳過來的參數是否為空,不為空則執行條件查詢
     if(!empty($user)){
       $data = $data->where( 'a.userId',$user);
     }
    if(!empty($office)){
      $data = $data->where( 'a.officeId',$office);
    }
 //使用 if(!empty(xxx)){},來判斷前端傳過來的參數是否為空,不為空則執行模糊搜索和聯合查詢
    if (!empty($key)) {
      $data = $data->where(function ($query) use ($key) {
        $query->where('a.code', 'like', "%{$key}%")
          ->orWhere('b.name', 'like', "%{$key}%")
          ->orWhere('c.name', 'like', "%{$key}%");
      });
    }
//使用->paginate(10)進行分頁
    $results=$data ->paginate(10);
    return $results;
}

更多關于Laravel相關內容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優秀開發框架總結》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。

您可能感興趣的文章:
  • 使用Golang簡單實現七牛圖片處理API
  • Flask框架Flask-Login用法分析
  • Go Web框架gin的入門教程
  • Python的Flask框架及Nginx實現靜態文件訪問限制功能
  • PHP框架Laravel插件Pagination實現自定義分頁
  • 使用Nginx+uWsgi實現Python的Django框架站點動靜分離
  • golang API開發過程的中的自動重啟方式(基于gin框架)

標簽:廊坊 崇左 白銀 太原 鄂州 衡陽 辛集 綏化

巨人網絡通訊聲明:本文標題《Laravel框架執行原生SQL語句及使用paginate分頁的方法》,本文關鍵詞  Laravel,框架,執行,原生,SQL,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Laravel框架執行原生SQL語句及使用paginate分頁的方法》相關的同類信息!
  • 本頁收集關于Laravel框架執行原生SQL語句及使用paginate分頁的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 欧美AV无码一区二区| 寂寞少妇无码A片一区二区免费 | 丰满的奶水边做边喷| 日本香港三级| 女的被?到爽羞羞免费| 圣诞之夜动漫无删减| japanesematare成熟56| 车上乱肉合集乱500小说小说| 日本Av最大乳神排行| 俄罗斯一级A片免费播放| 吻床戏边摸边做18??| 精品乱码二区三四区视频特点| 国产99在线a视频| 国产精品果冻| 韩国做受???高潮95| 久久福利电影网| 我解开岳内裤50岁小说阅读| 军人野外吮她的花蒂视频99| 男人的天堂免费A级毛片无码| chinagay男男freegay动漫| 狠狠色噜狠狠狠狠色综合久| 第一福利网| 国产真实的和子乱拍在线观看| 成人女人大片免费播放二级| 九色PORNY丨首页?入口在线| 男男H黄动漫啪啪无遮挡软件| 精品国产亚洲人成在线观看| 动漫美女脱了内裤打屁股| 美女下部尿囗秘?无遮挡平台| 被下媚药后做精油按摩h| 小和尚初尝高h| 99在线视频精品费观看视| 99久久国产综合精品swag超清| Chⅰna国模大尺pⅰCS| 男人插女人视频免费| 附近约小姐100一次| 好男人的资源在线| 大学生A片一区二区三区| 成人午夜网站| 白丝捆绑| 野战露脸在线视频国产|