Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 集合查询生成器-orderBy多个值_Laravel_Eloquent_Laravel Query Builder_Laravel 5.7 - Fatal编程技术网

Laravel 集合查询生成器-orderBy多个值

Laravel 集合查询生成器-orderBy多个值,laravel,eloquent,laravel-query-builder,laravel-5.7,Laravel,Eloquent,Laravel Query Builder,Laravel 5.7,在我雄辩的模型中,我有一个位置行。它包含5个可能的答案,例如: 酒店 住宿 图书馆 其余的价值观 我想执行一个orderBy,并希望它们按此顺序列出。有没有一种方法可以通过使用orderBy实现它?比如: People::orderBy('location', ['Hotel, 'Library', 'Accommodation']); 实现这一目标的最佳方法是什么?因此,您可以通过以下方法实现: People::orderByRaw("FIELD(location , 'Hotel, '

在我雄辩的模型中,我有一个位置行。它包含5个可能的答案,例如:

  • 酒店

  • 住宿

  • 图书馆

  • 其余的价值观

我想执行一个orderBy,并希望它们按此顺序列出。有没有一种方法可以通过使用orderBy实现它?比如:

People::orderBy('location', ['Hotel, 'Library', 'Accommodation']);

实现这一目标的最佳方法是什么?

因此,您可以通过以下方法实现:

People::orderByRaw("FIELD(location , 'Hotel, 'Library', 'Accommodation') ASC") 

当然,您可以选择ASC或DESC.

位置行是什么意思?你能解释一下你的表格结构吗(用示例数据和列名)?酒店、住宿、图书馆是数据值,
location
是表格列名