我在数据库产品和用户中有两个表我有这个 SQL 查询Product::where('status',5)
->where('user_id',120)
->orderBy('created_at','DESC')
->paginate(50)我在 USERS 表中有一个名为 valid_rate 的列我所需要的只是通过用户表中的 valid_rate 列订购这些产品就像那个 Product::where('status',5)->orderBy('valid_rate','DESC')->get();
3 回答

三国纷争
TA贡献1804条经验 获得超7个赞
Product::with('user')->where('status',5) ->where('user_id',120) ->orderBy('created_at','DESC') ->paginate(50);
如果你和 eloquent 关系 laravel 的用户有产品关系

明月笑刀无情
TA贡献1828条经验 获得超4个赞
尝试这个
Product::with('users')->where('status',5) ->where('user_id',120) ->orderBy('valid_rate','DESC') ->paginate(50);

料青山看我应如是
TA贡献1772条经验 获得超8个赞
首先在用户 id 上加入两个表。
你的代码会是这样的
//join users table with product
//replace (products) with product table name
Product::join('users', 'users.id', '=', 'products.user_id')
->where('products.status',5)
->where('products.user_id',120)
->orderBy('users.valid_rate','DESC')
->paginate(50)
- 3 回答
- 0 关注
- 206 浏览
添加回答
举报
0/150
提交
取消