authorize('update', $title); request()->validate([ 'ids' => 'array|min:1', 'ids.*' => 'integer', ]); $queryPart = ''; foreach (request('ids') as $order => $id) { $queryPart .= " when id=$id then $order"; } DB::table('videos') ->whereIn('id', request('ids')) ->update(['order' => DB::raw("(case $queryPart end)")]); return $this->success(); } }