婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > Laravel find in set排序?qū)嵗?/div>

Laravel find in set排序?qū)嵗?/h1>

熱門標(biāo)簽:聊城電話外呼系統(tǒng)公司 辦理重慶400電話 德陽中江如何申請(qǐng)400開頭電話 銅川電話機(jī)器人價(jià)格 青白江地圖標(biāo)注 沛縣400電話辦理 AI電話機(jī)器人OEM貼牌 智能電話機(jī)器人好公司門薩維 江蘇電商外呼系統(tǒng)運(yùn)營(yíng)商

做項(xiàng)目遇到個(gè)需求,需要對(duì)結(jié)果集中的數(shù)據(jù)進(jìn)行指定規(guī)則的順序排列。

例如,用戶狀態(tài)有四種:

=>未激活;1=>正常;2=>禁用;3=>軟刪除

現(xiàn)在的需求是,我要按照:正常->未激活->禁用->刪除;這個(gè)順序來進(jìn)行排序,同時(shí)按照注冊(cè)時(shí)間降序,網(wǎng)上查了很多資料,國(guó)內(nèi)提到這個(gè)的很少,在stackOverFlow上找到了答案!

先上解決方案:

public function index($customer_type = null) {
  $search = request('search');
  $perPage = request('perPage') ? request('perPage') : 10;
  $customer_type = $customer_type ? $customer_type : request('customer_type');
  // \DB::enableQueryLog();
  $data = Customer::select(['id', 'email', 'user_name', 'nick_name', 'status', 'phone', 'create_time'])
    ->where('customer_type', '=', $customer_type)
    ->where(function ($query) use ($search) {
      if ($search) {
        $query->where('user_name', 'like binary', '%' . $search . '%')
          ->orWhere('nick_name', 'like binary', '%' . $search . '%')
          ->orWhere('phone', 'like binary', '%' . $search . '%')
          ->orWhere('email', 'like binary', '%' . $search . '%');
      }
    })
    ->orderByRaw("FIELD(status, " . implode(", ", [1, 2, 0, 3, 4]) . ")")
    ->orderBy('create_time', 'desc')
    ->paginate($perPage);
  // $query = \DB::getQueryLog();
  // dd($data);
  //追加額外參數(shù),例如搜索條件
  $appendData = $data->appends(array(
    'search' => $search,
    'perPage' => $perPage,
  ));
  return view('admin/customer/customerList', compact('data'));
}

打印出來的sql語句如下:

array:2 [▼
 => array:3 [▼
“query” => “select count(*) as aggregate from customer where customer_type = ?”
“bindings” => array:1 [▼
 => “1”
]
“time” => 2.08
]
 => array:3 [▼
“query” => “select id, email, user_name, nick_name, status, phone, create_time from customer where customer_type = ? order by FIELD(status, 1, 2, 0, 3, 4), create_time desc limit 10 offset 0”
“bindings” => array:1 [▼
 => “1”
]
“time” => 1.2
]
]

參考了以下鏈接:

https://stackoverflow.com/questions/42068986/laravel-weird-behavior-orderbyrawfield

https://stackoverflow.com/questions/34244455/how-to-use-not-find-in-set-in-laravel-5-1

https://stackoverflow.com/questions/35594450/find-in-set-in-laravel-example/35594503

find_in_set 復(fù)雜應(yīng)用:

public function get_teacher_list($timeType, $name, $perPage = 10, $personality = 0, $teachingStyle = 0, $ageType = 0)
{
  // \DB::enableQueryLog();
  $result_data = DB::table('teacher_info as ti')
    ->select('ti.*')
    ->join('customer', 'customer.id', '=', 'ti.customer_id')
    ->where(function ($query) use ($personality) {
      if (trim($personality)) {
        $query->whereRaw("find_in_set($personality,ti.label_ids)");
      }
    })
    ->where(function ($query) use ($teachingStyle) {
      if (trim($teachingStyle)) {
        $query->whereRaw("find_in_set($teachingStyle,ti.label_ids)");
      }
    })
    ->where(function ($query) use ($ageType) {
      if (trim($ageType)) {
        $ageType = explode('-', $ageType);
        $query->whereRaw("DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)), '%Y')+0 between $ageType[0] and $ageType[1]");
      }
    })
    ->where(function ($query) use ($timeType) {
      //1本周,2下周
      if ($timeType == 1) {
        $query->where('ti.can_appointment_1', 1);
      } elseif ($timeType == 2) {
        $query->where('ti.can_appointment_2', 1);
      } else {
        $query->where('ti.can_appointment_1', '>', 0)
          ->orWhere('ti.can_appointment_2', '>', 0);
      }
    })
    ->where(function ($query) use ($name) {
      if (trim($name)) {
        $query->where('ti.chinese_name', 'like', '%' . $name . '%')
          ->orWhere('ti.english_name', 'like', '%' . $name . '%');
      }
    })
    ->where('ti.status', 1)
    ->orderBy('ti.total_teach_num', 'desc')
    ->orderBy('ti.total_star_num', 'desc')
    ->orderBy('ti.satisfaction', 'desc')
    ->orderBy('ti.comment_num', 'desc')
    ->orderBy('ti.english_name', 'asc')
    ->paginate($perPage);
  // dd($result_data, \DB::getQueryLog());

  return $result_data;
}

專門拿出來看一下:

$ids = array(1,17,2);

$ids_ordered = implode(',', $ids);

$items = User::whereIn('id', $ids)
 ->orderByRaw(DB::raw("FIELD(id, $ids_ordered)"))
 ->get();

以上這篇Laravel find in set排序?qū)嵗褪切【幏窒斫o大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 對(duì)laravel in 查詢的使用方法詳解

標(biāo)簽:迪慶 烏魯木齊 三亞 濟(jì)寧 鷹潭 南寧 赤峰 山南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Laravel find in set排序?qū)嵗罚疚年P(guān)鍵詞  Laravel,find,set,排序,實(shí)例,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Laravel find in set排序?qū)嵗废嚓P(guān)的同類信息!
  • 本頁收集關(guān)于Laravel find in set排序?qū)嵗南嚓P(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日韩色视频在线观看| 亚洲国产一区二区三区青草影视| 成人免费视频播放| 国产成人午夜视频| zzijzzij亚洲日本少妇熟睡| 色综合天天性综合| 欧美性生活大片视频| 欧美日韩精品免费观看视频| 日韩一二三区不卡| 国产精品污www在线观看| 一区二区三区在线观看视频| 久久机这里只有精品| 国产精品一区在线| 色综合天天综合网国产成人综合天| 国产九色sp调教91| 一区二区三区加勒比av| 天天免费综合色| 国产伦精品一区二区三区免费| 日本黄色一区二区| 久久精品欧美一区二区三区麻豆| 亚洲一区二区三区四区在线观看 | 久久久欧美精品sm网站| 夜夜爽夜夜爽精品视频| 综合在线观看色| 午夜精品久久久久影视| 丁香啪啪综合成人亚洲小说| 欧美精品亚洲一区二区在线播放| 在线免费观看日本一区| xvideos.蜜桃一区二区| 亚洲精品成人精品456| 成人av午夜影院| 欧美xxxxxxxxx| 日韩午夜在线播放| 亚洲视频综合在线| 96av麻豆蜜桃一区二区| 国产精品欧美综合在线| 国产美女娇喘av呻吟久久| 国产精品一级二级三级| 2024国产精品| 国产成人av电影在线| 亚洲国产精品99久久久久久久久| 精品综合免费视频观看| 欧美国产成人精品| 大陆成人av片| 国产精品私人影院| 高清日韩电视剧大全免费| 一区二区三区四区亚洲| 久久久精品国产免费观看同学| 欧美伊人久久久久久午夜久久久久| 久久99国产精品久久| 一区二区三区欧美| 中文字幕第一区综合| 久久久精品日韩欧美| 欧美一区二区视频在线观看2022 | 欧美日韩aaa| 日本韩国精品一区二区在线观看| 国产一区二区福利视频| 男男gaygay亚洲| 一个色妞综合视频在线观看| 亚洲天天做日日做天天谢日日欢 | 972aa.com艺术欧美| 国产成人免费在线观看不卡| 蜜臀av亚洲一区中文字幕| 亚洲成在线观看| 亚洲视频网在线直播| 欧美亚洲国产一区二区三区| 99久久国产综合精品麻豆 | 7777精品伊人久久久大香线蕉经典版下载| 波多野结衣一区二区三区| 国产精品自产自拍| 国产精品久久久久影院| 久久综合九色综合欧美就去吻| 欧美美女网站色| 国产电影一区在线| 国产一区二区在线看| 精品亚洲国产成人av制服丝袜| 亚洲国产一二三| 亚洲成av人片一区二区梦乃| 天天av天天翘天天综合网| 亚洲三级免费电影| 国产精品第一页第二页第三页| 精品对白一区国产伦| 欧美电影免费观看高清完整版在 | 亚洲国产视频一区| 日本免费新一区视频| 日韩电影在线免费| 国产最新精品精品你懂的| 国产一区二区三区免费在线观看| 国产不卡视频一区二区三区| 国产超碰在线一区| eeuss国产一区二区三区| 在线精品视频免费播放| 欧美精品久久久久久久多人混战| 欧美一区二区三区在线视频| 欧美一区二区国产| 国产亚洲美州欧州综合国| 国产精品福利一区二区| 亚洲国产精品激情在线观看 | 国产精品美女www爽爽爽| 一区二区三区不卡视频| 午夜精品123| 国产在线播精品第三| 国产精品自拍毛片| 欧美日韩国产中文| 精品动漫一区二区三区在线观看| 久久综合999| 亚洲欧美国产毛片在线| 日韩av电影一区| 成人精品国产福利| 91麻豆.com| 国产三级精品三级在线专区| 一区二区三区在线免费观看| 日韩av中文字幕一区二区| 91精品91久久久中77777| 老司机精品视频在线| 一区二区三区鲁丝不卡| 午夜在线电影亚洲一区| 成人深夜在线观看| 7777精品伊人久久久大香线蕉超级流畅| 久久亚洲综合色| 国产一区二区三区在线观看免费 | 波多野结衣中文字幕一区| 精品综合久久久久久8888| 最新欧美精品一区二区三区| 欧美日韩视频在线第一区 | 欧美在线|欧美| 欧美zozozo| 亚洲黄色小说网站| 欧美岛国在线观看| 国产成人精品一区二区三区网站观看| 天堂久久久久va久久久久| 99久久精品99国产精品 | 欧美亚洲综合久久| 日韩经典一区二区| 69堂国产成人免费视频| 99久久婷婷国产综合精品| 香蕉av福利精品导航| 成人黄色在线视频| 日韩午夜精品电影| 高清不卡一区二区在线| 亚洲成a人片在线不卡一二三区| 欧美视频在线不卡| 精品久久久久久久久久久院品网| 极品销魂美女一区二区三区| 欧美另类z0zxhd电影| 亚洲精品乱码久久久久久黑人 | 欧美国产禁国产网站cc| 久久99精品国产.久久久久久| 91精品久久久久久蜜臀| 亚洲成av人片在www色猫咪| 欧美色网站导航| 亚洲成人久久影院| 日韩一级免费观看| 韩日欧美一区二区三区| 日韩一级精品视频在线观看| 日本午夜精品一区二区三区电影 | 国产不卡一区视频| 中文字幕av一区二区三区高| 日本不卡视频在线观看| 久久久久九九视频| 北条麻妃国产九九精品视频| 久久伊人蜜桃av一区二区| 在线影视一区二区三区| 韩国在线一区二区| www成人在线观看| 99精品一区二区| 日韩毛片精品高清免费| www.日韩av| 亚洲美腿欧美偷拍| 色婷婷亚洲一区二区三区| 日本中文字幕一区二区有限公司| 久久久久9999亚洲精品| 成人国产精品免费观看视频| 亚洲 欧美综合在线网络| 欧美精品日韩综合在线| 丁香婷婷综合五月| 亚洲一区二区三区四区在线| 欧美精品久久一区| bt7086福利一区国产| 亚洲女厕所小便bbb| 精品久久一区二区| 欧美综合视频在线观看| 午夜精品久久久久久久99樱桃 | 美国三级日本三级久久99| 久久久精品综合| 91色婷婷久久久久合中文| 亚洲啪啪综合av一区二区三区| 午夜日韩在线观看| 色综合色综合色综合| 国产精品的网站| 欧美性视频一区二区三区| 亚洲免费在线观看视频| 欧美精品久久99| 色婷婷综合久久久久中文一区二区 | 视频一区欧美精品| 欧美成人在线直播| 欧美日韩精品一区二区三区蜜桃| 亚洲国产视频直播| 国产清纯白嫩初高生在线观看91| 欧美日韩一二三区|