Mysql 从表1中检索数据,但在表2中进行比较-Laravel eloquent

Mysql 从表1中检索数据,但在表2中进行比较-Laravel eloquent,mysql,laravel,laravel-5,laravel-5.5,laravel-query-builder,Mysql,Laravel,Laravel 5,Laravel 5.5,Laravel Query Builder,我有一个问题如下: Relation1::with('relation2') ->select('relation_1_columns') ->where('relation_2_column', $relation2->id) //Throws unknown column error ->where('relation_2_column', 1) //Throws unknown column error ->get

我有一个问题如下:

Relation1::with('relation2') 
->select('relation_1_columns')       
->where('relation_2_column', $relation2->id)  //Throws unknown column error
->where('relation_2_column', 1)               //Throws unknown column error
->get()->toArray();
如果我这样做:

Relation1::with('relation2') 
->select('relation_1_columns')       
->where('relation2.relation_2_column1', $relation2->id)  //Throws unknown column `relation2.relation_2_column` error
->where('relation2.relation_2_column2', 1)               //Throws unknown column `relation2.relation_2_column` error
->get()->toArray();
如何使用
where子句进行检查使用
随附的表中的
使用:


您的relation1模型中是否定义了任何关系?@Sohel0415是的,有很多。关系1有许多关系2。我想要Relation1的所有数据,其中Relation1.id===Relation2.other\u id
Relation1::with('relation2')
      ->select('relation_1_columns')
      ->whereHas('relation2', function($q) use ($relation2){
            $q->where('relation_2_column1', $relation2->id)->where('relation_2_column2', 1);
       })             
      ->toArray();