具有多个表联接和多个联接字段的Laravel查询

时间:2018-07-02 03:42:56

标签: php mysql laravel-5

我正在尝试建立查询以将具有多个联接字段的多个表联接起来。

这是代码:

        $crew = DB::table('crew')
            ->join('aclist', function ($join){
                $join->on(function($query){
                  $query->on('aclist.ac_config', '=', 'crew.config')
                        ->on('aclist.ac_type', '=', 'crew.ac_type');
                });
            })
            // Error happened after I add this indexform join script
            ->join('indexform', function ($join){
                $join->on(function($query){
                $query->on('indexform.config', '=', 'crew.config')
                       ->on('indexform.ac_type', '=', 'crew.ac_type');
                });
            })        

            ->select('crew.*','indexform.*')
            ->where('aclist.ac_reg', $input['acreg'])
            ->get();

下面是视图代码,添加索引表单连接脚本后,它不再起作用

     @foreach ($crew as $crw)
        <tr>
        <td class="container" align="center" colspan="4">{{$crw->description}}</td>
        <td class="container" align="center">{{$crw->qty}}</td>
        <td class="container" align="center">{{$crw->arm_meter}}</td>
        <td class="container" align="center">{{$crw->weight_kg}}</td>
        <td class="container" align="center">{{$crw->index}}</td>
        </tr>
      @endforeach

在添加脚本以加入indexform表之前,查询工作良好。 请帮助如何建立查询以连接具有多个“ on”条件的三个表。

0 个答案:

没有答案