【问题标题】:orderBy best selling product [duplicate]orderBy最畅销的产品[重复]
【发布时间】:2018-02-06 05:25:13
【问题描述】:

所以我有 2 个表格、产品和销售额。

产品是 ABC,在销售额中 A = 16, B= 18, C=10。

我想显示按best sell 订购的产品,所以订单就像BAC,怎么做?

谢谢你的帮助:)


抱歉,如果我不够清楚,所以这是我的完整场景

产品表

牛奶 蛋 巧克力

销售表

牛奶 牛奶 蛋 牛奶 巧克力 蛋 巧克力 巧克力 牛奶

然后在主页我想按畅销商品显示产品订单,所以订单是

牛奶 巧克力 蛋

我仍然没有任何疑问,因为我仍然不知道该怎么做

【问题讨论】:

  • 请添加您的产品和销售表架构和模型
  • 在 Product 和 Sales 之间使用 Join,最后按 sales.count desc 进行排序或直接在 sales 表上进行 group by 并按 count 排序
  • 在你的连接查询中试试这个 "orderBy('something', 'asc')"
  • 您肯定尝试过查询。可以加入吗?
  • 分享你完整的 laravel 查询?

标签: mysql sql database laravel eloquent


【解决方案1】:

您没有提供表架构,但如果它是 belongsTo 关系

class Product extends Model
{
   public function sale()
   {
      return $this->belongsTo(App\Models\Sale::class,'sale_id')
   }
}

然后

$products = Product::with('sale')->orderBy('sale.count')->get();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-06
    • 2016-03-03
    • 1970-01-01
    • 1970-01-01
    • 2016-01-19
    • 1970-01-01
    相关资源
    最近更新 更多