【发布时间】:2018-11-25 14:30:26
【问题描述】:
这个想法是从订单表中获取最畅销的产品。
Order::select('product_id', 'price')->get()->groupBy('product_id')
->map(function ($row) {
return $row->count('product_id');
});
订单表如下所示
我得到类似的东西:
product_id: count
"8" : 2,
"34": 1,
"36": 1,
"28": 1,
"31": 1,
"40": 1,
"44": 1,
"46": 1,
"47": 2
但我仍然需要按数量订购。我该怎么做?
预期
"8" : 2,
"47": 2,
"34": 1,
"36": 1,
"28": 1,
"31": 1,
"40": 1,
"44": 1,
"46": 1,
【问题讨论】:
-
您能否提供更多关于您的要求的详细信息
-
您可以在您的收藏中使用
sortBy或sortByDesc方法。 -
@adam,怎么样?你能给我一个示例代码吗?我试过了,但我没有得到我需要的东西
-
@SagarGautam,我已经更新了我的问题。
-
@owen 我已经添加了答案,请花点时间尝试解决方案。
标签: php mysql laravel query-builder