Всем доброго времени! Я новичок! Подскажите как посредством sql и php отобразить на странице имена . Суть вопроса такова! Есть 1 таблица контрагентов! Во вторую таблицу вносятся в два разных столбца два контр агента. По id Я их вывожу и все ок. Но стоило мне отобразить их имена и тут лажа... Вот часть кода запрос $stmt = $pdo->prepare('SELECT * FROM deals LEFT JOIN users ON users.id = deals.id_user LEFT JOIN contr_agents ON contr_agents.id_contr_agent = deals.id_contr_agent AND id_contr_agent_2 ORDER BY deals.date_arrival DESC, deals.id_deals DESC LIMIT :current_page, :record_per_page'); вывод <?php foreach ($deals as $contact): ?> <tr> <td><?=$contact['org_name']?></td></td> <td><?=$contact['id_contr_agent']?></td> <td><?=$contact['id_contr_agent_2']?></td> </tr> <?php endforeach; ?> org_name - это их имя
Насколько я понял, нужно делать LEFT JOIN для каждого контрагента и переименовывать в запросе присоединяемые таблицы/их поля.
org_name там есть, но для кого-то одного, так как данные берутся с одной таблицы --- Добавлено --- Если Я делаю 2 LEFT JOIN для одной таблицы, то вообще ничего не отображается. Нужно как то переименовать org_name, чтобы система понимала, что отображать. Разные id отображаются в столбцах правильно, если пишу отобразить org_name, то отображает либо первого, либо второго...
Если Я делаю 2 LEFT JOIN для одной таблицы, то вообще ничего не отображается. Нужно как то переименовать org_name, чтобы система понимала, что отображать. Разные id отображаются в столбцах, если пишу отобразить org_name, то отображает либо первого, либо второго... Таблица 1 contr_agents id_contr_agent int(11) AUTO_INCREMENT id_user int(11) id_agent_type int(11) org_name varchar(100) Таблица 2 deals id_deals int(11) AUTO_INCREMENT id_user int(11) id_contr_agent int(11) id_contr_agent_2 int(11) Нужно вывести имена id_contr_agent и id_contr_agent_2 таблицы deals. Данные org_name берутся из таблицы contr_agents
Попробуйте так: Код (Text): SELECT deals.*, ca1.org_name org_name_1, ca2.org_name org_name_2 FROM deals LEFT JOIN contr_agents ca1 ON deals.id_contr_agent=ca1.id_contr_agent (тут можно просто USING(id_contr_agent)) LEFT JOIN contr_agents ca2 ON deals.id_contr_agent_2=ca2.id_contr_agent ca1.org_name можно не переименовывать, т.е. написать без алиаса org_name_1.