在Laravel

时间:2017-06-08 17:13:22

标签: php laravel laravel-5.1

我正在尝试使用第一个数据库中的一个表创建一个查询范围,并将左连接附加到另一个数据库中的另一个表。我理解如何在Laravel中做一个查询范围。

是否可以从不同的数据库中保留连接2个表?如果是这样,你怎么做?

这是我的查询范围:

public function scopeLinkSalesHistory($query, $search)
{
    $query->leftJoin('sOeinvd', 'inventory.item', '=', 'sOeinvd.item')
          ->leftJoin('sOeinvh', 'sOeinvh.invuniq', '=', 'sageOeinvd.invuniq');

    ! ( empty( $search ) ) ? $query->where( function ( $query ) use ( $search ) {
        $query->where( 'inventory.item', 'LIKE', '%' . $search . '%' )
              ->orWhere( 'inventory.description', 'LIKE', '%' . $search . '%' );
    } )
        : $query;

    $query->select('*', DB::raw('sum(qtyshipped) as qtysold'), 'inventory.item as item');
    $query->groupBy('sOeinvh.invfiscper')->groupBy('sOeinvh.invfiscyr')->groupBy('inventory.item')->orderBy('inventory.item')->orderBy('sOeinvh.invfiscyr')->orderBy('sOeinvh.invfiscper');
    return $query;
}

以'开头的表格。来自第二个数据库。它没有用,因为我没有正确引用这些表。通常我会用这个:

DB::connection('sql')->table('sOeinvd')

但是你如何在查询范围中使用它呢?

0 个答案:

没有答案