【问题标题】:Laravel does not give the values sequentiallyLaravel 没有按顺序给出值
【发布时间】:2022-01-04 09:40:34
【问题描述】:

我有一个汽车 ID 数组。

$carIds = [21,12,33];

我正在发送一个 ids 数组以从我的集合中检索值。

$cars = Cars::whereIn('id', $carIds)->get();

传入的汽车值不是按照我给的id的顺序来的,很复杂。

【问题讨论】:

标签: php laravel


【解决方案1】:

你可以做的不同方式是:

$cars = DB::table('Cars')
                ->orderBy('id', 'desc')
                ->get();

【讨论】:

  • 问题明确指出,结果必须按照用户提供的顺序排列ids
【解决方案2】:

使用以下代码更新您的代码

Cars::whereIn('id', $carIds)
->orderByRaw('FIELD (id, ' . implode(', ', $carIds) . ') ASC')
->get();

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2018-10-01
  • 2021-09-06
  • 1970-01-01
  • 2015-06-15
  • 1970-01-01
  • 1970-01-01
  • 2017-04-06
  • 1970-01-01
相关资源
最近更新 更多