如何连接两个表以使一个记录在特定列上具有空值,而另一条记录具有其值?
输出应该是这样
正在发生的事情是第二条记录的B.column3被同一列的第一条记录的值填充。
我尝试了此代码,但无法正确选择。
$orders = self::leftJoin('customer_information', function ($join) {
$join->on('customer_information.id', '=', 'orders.customer_id')
->orWhere('orders.customer_id', '=', null);
})->get();
我该如何实现?
订单表有 - 顾客ID -order_id -total_amount
customer_information有 - ID - 名称 -地址
我想从有或没有customer_id的联接表中获取所有记录。
PS:
我在Order模型中做到这一点。
答案 0 :(得分:1)
leftjoin
将使用orders
或不使用customer_informations
获得所有customer_information
:
$orders = self::leftJoin('customer_information', 'customer_information.id', '=', 'orders.customer_id')->get()