[英]Elequent inner join to only one line from right table
我需要首先连接多个表,所有表都具有相同数量的行,并且可以完美连接。 但是加入最后一行的行,除了添加的日期外,这两行的行完全相同,因此将我的数据复制到每个用户的月数。 是否可以只加入其中一条线。 哪一个都没关系。
$rekeninge = DB::connection('odbc')
->table($this->mgk . '.D000M00L')
->leftJoin($this->div . '.D050M00P', $this->div . '.D050M00P.RKNR', '=', $this->mgk . '.D000M00L.RKNR')
->leftJoin($this->mgk . '.VFDIND00P', $this->mgk . '.VFDIND00P.F06', '=', $this->mgk . '.D000M00L.RKNR')
->leftJoin($this->mgk . '.VINDEXP', $this->mgk . '.VINDEXP.VNAAM', '=', $this->mgk . '.VFDIND00P.VFDVELDID')
->where([
'F02' => 'A',
'F165' => 'D'
])
->get();
先感谢您
您需要by
以下任一列对结果进行group
:
https://laravel.com/docs/5.4/queries#ordering-grouping-limit-and-offset
因此您的查询最终将如下所示:
$rekeninge = DB::connection('odbc')
->table($this->mgk . '.D000M00L')
->leftJoin($this->div . '.D050M00P', $this->div . '.D050M00P.RKNR', '=', $this->mgk . '.D000M00L.RKNR')
->leftJoin($this->mgk . '.VFDIND00P', $this->mgk . '.VFDIND00P.F06', '=', $this->mgk . '.D000M00L.RKNR')
->leftJoin($this->mgk . '.VINDEXP', $this->mgk . '.VINDEXP.VNAAM', '=', $this->mgk . '.VFDIND00P.VFDVELDID')
->where([
'F02' => 'A',
'F165' => 'D'
])
->groupBy('month')
->get();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.