Объединение двух 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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.25 из 5