Laravel - 首先从db获取特定行

时间:2017-03-30 08:00:56

标签: php mysql laravel

所以我想“修复”我的数组中的前三个结果,我得到的就是我的例子:

$ids = explode(',', '2,3,1');

$result = Items::whereIn('id', $ids)
                    ->where('active', '1')
                    ->get();

所以我希望这个返回一个数组,其中id 2是第一个,然后是2,然后是1.每次id的顺序将是不同的,所以我不能做像id等的顺序。

1 个答案:

答案 0 :(得分:2)

使用Raw for FIELD

$result = Items::whereIn('id', $ids)
                    ->where('active', '1')
                    ->orderByRaw('FIELD(id,$ids)')
                    ->get();