Объединение двух MySQL таблиц с уникальными ключами
Формулировка задачи:
Здравствуйте. Я чайник в MySQL, а гугление особых успехов не принесло, поэтому обращаюсь к местным знатокам.
Есть две таблицы в одной бд, обе - типичные таблицы про калорийность продуктов, содержащие название продукта и его белки-жиры-углеводы. Обе они на часть повторяют друг друга, но в остальном различаются. Цель была: сделать из двух таблиц одну без повторяющихся названий. Следующий запрос выводит список уникальных неповторяющихся названий из двух таблиц, и только.
select distinct (name) from (select * from table1 union select * from table2) as joined1 order by name;
А нужно, чтобы выводились и остальные данные по этим продуктам (prot.*, fat.*, carb.*).
Подскажите, пожалуйста, как правильно.
Решение задачи: «Объединение двух MySQL таблиц с уникальными ключами»
textual
Листинг программы
SELECT DISTINCT name FROM table1 LEFT JOIN table2 ON table1.name = table2.name UNION SELECT DISTINCT name FROM table1 RIGHT JOIN table2 ON table1.name = table2.name
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д