Laravel从不同的数据库加入3个表1。查询真的很慢

时间:2017-12-11 09:25:21

标签: php laravel-5.4

我有以下代码,

  $resultsInCalls =  DB::table('log')
        ->join('user_2 as user_old', 'log.agent', '=', 'user_old.sip_id')
        ->join('db2.abc as call_r', 'log.agent', '=', 'call_r.localParty')
        ->select('user_old.fname','user_old.lname','log.data2', 'log.callid', 'call_r.filename')
        ->whereDate('log.created', '=', date('Y-m-d'))    // this day
        ->where('log.data2', '>=', '45')    
        ->where('log.agent', '=', $id)   
        ->where(function ($query) {
            $query->where('event', '=', 'COMPLETEAGENT')
               ->orWhere('event', '=', 'COMPLETECALLER');
             }) 
        ->inRandomOrder()
        ->take(5)
        ->get();    

          var_dump($resultsInCalls);

log和user_2表来自同一个DB。当我运行此查询时,需要花费太多时间。如何在laravel中加入这种表格。

0 个答案:

没有答案