我有两个表,例如用户和订单。
我必须加入 users.id = orders.user_id
上有订单的用户- 这很好。
用户表与订单表具有一对多关系。
我也有一些条件,比如orders.pay_type = 'xyz'
, 'orders.date = yesterday'
, 'user.status = active'
..等等
我的问题是我需要将我的用户表连接到与该 user_id 相对应的订单表的最新行。 或者需要获取用户订单表详细信息以及用户表数据的最新详细信息。
我已经尝试过
->orderBy('orders.date')
->groupBy('orders.user_id')
->get();
但是在o/p中没有结果。
最佳答案
$data= users::leftJoin('orders', function($join) { $join->on('orders.user_id', '=', 'users.id') ->on('orders.id', '=', DB::raw("(SELECT max(id) from orders WHERE orders.user_id = users.id)")); }) ->select(*)
这解决了我的问题。
关于php - Laravel 查询格式 - 连接到最新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58933252/