如何初始化 Table Name 在 laravel 7 中使用查询生成器

How to initialization Table Name use query builder in laravel 7

我尝试初始化 table 名称,但出现错误。

在这种情况下,我在 table name

中对 'a' & 'b' 进行了初始化

所以,这是我的代码:

<?php

namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;
class Act_admin extends Model
{

    static function showCustomer(){

        $query = "a.CUST_CODE, a.CUST_NAME AS CUSTOMER NAME, a.GRADE";
        $data['data'] = DB::table("dummy_db.customer a ")
                            ->leftJoin("dummy_db.agents b", "a.AGENT_CODE", "=", "b.AGENT_CODE")                                                
                            ->select(DB::raw($query))->paginate(10);
        dd($data);
    }
}

来自错误的消息:

Illuminate\Database\QueryException
SQLSTATE [42000]: Syntax error or access violation: 1103 Incorrect table name 'customer a '
 (SQL: select count(*) as aggregate from `dummy_db`.`customer a ` inner join `dummy_db`.`agents b` on `a`.`AGENT_CODE` = `b`.`AGENT_CODE`)

使用as创建别名。

$data['data'] = DB::table("dummy_db.customer as a")
                            ->leftJoin("dummy_db.agents as b", "a.AGENT_CODE", "=", "b.AGENT_CODE")                                                
                            ->select(DB::raw($query))->paginate(10);