Php 如何在Laravel 5.6中选择多个表上的参数?

Php 如何在Laravel 5.6中选择多个表上的参数?,php,laravel,laravel-eloquent,laravel-5.6,Php,Laravel,Laravel Eloquent,Laravel 5.6,我需要使用laravel5.6在多个数据库表上运行select,并从post$request获取参数。现在我只需要在给定的值与记录的值相等的情况下才能得到记录 我想这样做,但无论loan的查询部分发生了什么,都会返回每个客户机和部门数据: Casefile::with([ 'client', 'loan' => function($query) use($request) { $query->where('bank_name','REGEXP',$r

我需要使用
laravel5.6
在多个数据库表上运行select,并从post
$request
获取参数。现在我只需要在给定的值与记录的值相等的情况下才能得到记录

我想这样做,但无论loan的查询部分发生了什么,都会返回每个客户机和部门数据:

Casefile::with([
    'client',
    'loan' => function($query) use($request) {
         $query->where('bank_name','REGEXP',$request->bank_name)
    },
    'section'
])->where($find)->get();
只有当
bank\u name
$request->bank\u name
匹配时,我才想拿回整个记录

我该怎么做?

试试这个:

Casefile::with([
    'client',
    'section'
])->whereHas('loan', function($query) use($request) {
     $query->where('bank_name','REGEXP', $request->bank_name)
})->where($find)->get();

尝试使用whereHas:看起来不错,但我需要在select中使用多个表。你知道吗?