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

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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