Laravel PHP:如何在3个表上应用连接时获取特定列ID?

时间:2017-11-29 14:19:22

标签: php laravel laravel-5 laravel-5.5

我想获得评级表ID,但在我的json中,当我们应用此连接时,它会给我属性表id, 我的查询:

$search = \Request::get('q');
    $u_id = User::find($id);

        $records = DB::table('ratings')->where('user_id' , $id)-
 >where('user_id' , $id)->where(function($q) use ($search){
             $q->where('attribute' , 'like' , '%' .$search. '%');
             $q->orwhere('score' , 'like' , '%' .$search. '%');
             $q->orwhere('attrtype' , 'like' , '%' .$search. '%');
        })
        ->join('users','ratings.user_id','=','users.id')->join('attributes' 
, 'attributes.id' , '=' ,'ratings.attribute_id' )->Paginate(5);
dd($records); 
return view('employee.show',compact('records' , 'u_id' , 'search')); 

在此之后我们获取属性表的ID,Like That

但我想要评级表ID,提前感谢开发人员。

1 个答案:

答案 0 :(得分:0)

查询:

$search = \Request::get('q');
    $u_id = User::find($id);

        $records = DB::table('ratings')->select('ratings.id as rid' , 
'ratings.user_id as ruid' , 'ratings.attribute_id as raid' , 'attributes.id 
as aid' , 'attributes.attribute as aa' , 'ratings.updated_at as rup' , 
'attributes.score as ascore' , 'attributes.unit as aunit')->where('user_id' 
, 
$id)->where('user_id' , $id)->where(function($q) use ($search){
             $q->where('attribute' , 'like' , '%' .$search. '%');
             $q->orwhere('score' , 'like' , '%' .$search. '%');
             $q->orwhere('attrtype' , 'like' , '%' .$search. '%');
        })
        ->join('users','ratings.user_id','=','users.id')->join('attributes' 
, 'attributes.id' , '=' ,'ratings.attribute_id' )->Paginate(5);

return view('employee.show',compact('records' , 'u_id' , 'search'));

查看:

<tbody>
@foreach($records as $record) 
<tr>
  <th scope="row">1</th>

  <td>{{$record->aa}}</td>
  <td>{{$record->ascore.$record->aunit}}</td>
  <td>{{$record->rup}}</td>

  <td><form class="form-group pull-right" action="/rating/{{$record->rid}}" method="post">
    {{ csrf_field() }}
    {{method_field('DELETE')}}

     <button type="submit" class="btn btn-danger">Delete</button>

 </form>
 </td>
 </tr>
  @endforeach 
 </tbody>