Laravel 5.1 - 按两列排序不按预期工作

jrg*_*man 7 mysql laravel laravel-5 laravel-5.1

我有两列,quarter_number和quarter_year.quarter_number列存储1到4之间的值,而quarter_year存储年份值.我想要对数据进行排序,例如:

ex: (quarter_number - quarter_year)
4 - 2015
3 - 2015
2 - 2015
1 - 2015
4 - 2014
3 - 2014
etc...
Run Code Online (Sandbox Code Playgroud)

因此,这句话似乎有效:

$last_figures = QuarterData::where('company_id', '=', $company->id) ->orderBy('quarter_number')->orderBy('quarter_year')->get();

不幸的是,它似乎没有按预期工作(我认为它类似于基数排序).它最终只是按年份排序(或者最后的orderBy语句是什么).我是否必须为此编写自己的自定义基数排序?或者,还有更好的方法?

谢谢.

Ale*_*lex 17

我认为你必须使用第quarter_year一个,像这样:

$last_figures = QuarterData::where('company_id', '=', $company->id)
       ->orderBy('quarter_year')->orderBy('quarter_number')->get();
Run Code Online (Sandbox Code Playgroud)