Объединить 2 таблицы с идентификатором

Я пытаюсь собрать 2 таблицы в соответствии с идентификатором, который находится в этих 2 таблицах, данные таблицы [2] войдут в таблицу [0] благодаря идентификатору, который у них общий, и то же самое для 2-й платы. Вот что я уже сделал:

Объединить 2 таблицы с идентификатором

$sql1 = Db::getInstance()->executeS('
            SELECT ra.id_customer, c.firstname AS Prénom, c.lastname AS Nom, COUNT(DISTINCT(rs.id_customer)) AS NbFilleuls, SUM(o.total_products_wt + o.total_shipping) AS CA
            FROM ' . _DB_PREFIX_ . 'customer c
            LEFT JOIN ' . _DB_PREFIX_ . 'rewards_account ra ON(c.id_customer = ra.id_customer)
            LEFT JOIN ' . _DB_PREFIX_ . 'rewards_sponsorship rs ON(ra.id_customer = rs.id_sponsor)
            LEFT JOIN ' . _DB_PREFIX_ . 'orders o ON(rs.id_customer = o.id_customer)
            WHERE ra.remind_active = 1
            GROUP BY rs.id_sponsor');

            $sql2 = Db::getInstance()->executeS('
            SELECT ra.id_customer, SUM(o.total_products_wt + o.total_shipping) AS CA_DATE
            FROM ' . _DB_PREFIX_ . 'customer c
            LEFT JOIN ' . _DB_PREFIX_ . 'rewards_account ra ON(c.id_customer = ra.id_customer)
            LEFT JOIN ' . _DB_PREFIX_ . 'rewards_sponsorship rs ON(ra.id_customer = rs.id_sponsor)
            LEFT JOIN ' . _DB_PREFIX_ . 'orders o ON(rs.id_customer = o.id_customer)
            WHERE o.date_add >= \'2018-04-09 00:00:00\'
            AND o.date_add <= \'2018-04-13 00:00:00\'
            GROUP BY rs.id_customer');

            $result = array_merge($sql1, $sql2);

Спасибо за помощь.

В том, что вы уже делали, нет «таблиц» - есть массив объектов и некоторые отношения в базе данных. Я не знаю, что вы пытаетесь сделать и с чего начинаете.

symcbean 13.04.2018 16:49
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
63
2

Ответы 2

Попробуй это:

$results = array();
for ($i = 0 ; $i <count($sql1) ; i++)
{
    $results[i] = array_merge($sql1[i],$sql2[i]);
}

вы хотите объединить определенные ячейки из обоих массивов, а не сами массивы (если я правильно понимаю ваш вопрос).

Кроме того, я предположил, что $ sql1 и $ sql2 имеют одинаковую длину и [id_customer] совпадают в ячейках с одинаковым индексом.

С другой стороны, это работает, если у человека нет товарооборота по сравнению с датой, которую он не видит прикрепленной:

Я все равно хотел бы опубликовать это

Спасибо

Другие вопросы по теме