Как объединить две таблицы без заполнения пустого столбца из другой записи? - PullRequest
0 голосов
/ 19 апреля 2020

Как можно объединить две таблицы, чтобы одна запись имела пустые значения в указанном столбце c, а другая запись имеет свои значения?

Выходные данные должны быть такими:

enter image description here

Происходит то, что B.column3 второй записи заполняется значением первой записи того же столбца.

I попробовал этот код, и я не могу сделать его правильным образом.

$orders = self::leftJoin('customer_information', function ($join) {
                $join->on('customer_information.id', '=', 'orders.customer_id')
                ->orWhere('orders.customer_id', '=', null);
            })->get();

Как мне этого достичь?

таблица заказов имеет - customer_id - order_id - total_amount

customer_information имеет - id - имя - адрес

Я хочу получить все записи из объединенных таблиц с или без customer_id.

PS:

  1. self ==> orders
  2. customer_id в таблице заказов иногда имеет нулевые значения, поэтому я не могу установить связь с таблицей customer_information

Я делаю это в модели заказа.

1 Ответ

1 голос
/ 19 апреля 2020

leftjoin получит все orders с customer_informations или без customer_information:

$orders = self::leftJoin('customer_information', 'customer_information.id', '=', 'orders.customer_id')->get()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...