中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

laravel模型查詢如何按照whereIn排序

發布時間:2022-12-09 10:05:46 來源:億速云 閱讀:183 作者:iii 欄目:開發技術

今天小編給大家分享一下laravel模型查詢如何按照whereIn排序的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

實例如下所示:

$ids = [5,7,3,1,2];
$data = Content::whereIn('id',$ids)
    ->select('id')
    ->get();
//查詢結果是想按照wherein的順序排序
//正確寫法
$data = Content::whereIn('id',$ids)
    ->select('id')
//   ->orderBy(\DB::raw('FIND_IN_SET(id, "' . implode(",", $ids) . '"' . ")"))
//   ->orderBy(DB::raw("FIND_IN_SET(id, '" . implode(',', $ids) . "'" . ')'))
//   ->orderByRaw("FIND_IN_SET(id, '" . implode(',', $ids) . "'" . ')')
    ->orderBy(\DB::raw('FIND_IN_SET(id, "' . implode(",", $ids) . '"' . ")"))
    ->get();

錯誤寫法

//錯誤寫法
$data = Content::whereIn('id',$ids)
    ->select('id')
    ->orderByRaw("FIND_IN_SET('id', "' . implode(",", $ids) . '"' . ")")
    ->get();
//該寫法查詢順序是按照id大小正序排序

原因解析

//正確寫法的sql語句為
select `id` from `contents`
order by FIND_IN_SET(id, "5,6,7,4,2,1") asc
//錯誤寫法的sql語句為
select `id` from `contents`
order by 'FIND_IN_SET(id, "5,6,7,4,2,1")' asc
//或者
select `id` from `contents`
order by `FIND_IN_SET(id, "5,6,7,4,2,1")` asc
 
//FIND_IN_SET()方法外面不要添加任何符號

以上就是“laravel模型查詢如何按照whereIn排序”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

保德县| 琼中| 连江县| 桂东县| 韶关市| 潼南县| 汉源县| 静安区| 乌鲁木齐市| 玉林市| 修水县| 昌宁县| 双城市| 茌平县| 寿阳县| 翁源县| 晴隆县| 满洲里市| 遵义县| 香河县| 三门峡市| 奎屯市| 九龙城区| 通榆县| 溧阳市| 新乡市| 织金县| 博爱县| 乡宁县| 西乡县| 鄄城县| 阳信县| 娄烦县| 大悟县| 涞水县| 松潘县| 兰溪市| 九寨沟县| 胶南市| 吴忠市| 淅川县|