【发布时间】:2020-09-12 01:11:13
【问题描述】:
在我的 laravel 应用程序中,我有两个名为 apps 和 app_payments 的表。我想加入这两个表,并按照以下 laravel ELOQUENT 中的说明进行操作。在连接表中,我有一列存储用户 ID (user_id)。以下 ELOQUENT 为特定用户返回多行
$sites=DB::table('app_payments')
->join('apps', 'app_payments.app_id', '=', 'apps.appId')
->select('app_payments.*', 'apps.*')
->where ('apps.appId','=',$id)
->get();
return view('payments.show',compact('sites'))
->with('i', (request()->input('page', 1) - 1) * 100);
但我只需要为一个(特定)用户 ID 选择一行,我知道我可能必须在那里使用 DISTINCT,但是在这个 laravel ELOQUENT 中很难使用它。
我怎样才能修改上面的 ELOQUENT 来实现呢?
【问题讨论】:
-
如果您只需要一个用户,请使用
->where('app_payments', '=', $userId)将该条件添加到查询中。 Distinct 不参与其中,因为它仅用于抑制重复的结果。我会假设不会有重复付款。这应该只返回指定用户的付款
标签: php mysql laravel eloquent distinct