Добавьте значения из таблицы большего размера в таблицу меньшего размера sql

#mysql

Вопрос:

У меня есть следующая таблица,

Имя День
Джон Понедельник
Лиам Понедельник
Лиам Вторник
Лиам Среда
Джон Среда

а другой стол-это,

День Яйца
Понедельник 10
Вторник 15
Понедельник 10
Среда 30
Среда 30

Я хочу добавить стоимость яиц в первую таблицу. Так что это должно стать,

Имя День Яйца
Джон Понедельник 10
Лиам Понедельник 10
Лиам Вторник 15
Лиам Среда 30
Джон Среда 30

Комментарии:

1. допустим, в понедельник будет 11, а во второй-12, как вы решите, какой из них получит то или иное значение, не имеет значения

Ответ №1:

Во второй таблице есть повторяющиеся строки, поэтому вы можете выбрать отдельные строки, а затем выполнить ОБЪЕДИНЕНИЕ.

Давайте назовем первый стол users , а второй будет eggs . Вы можете выполнить такой запрос:

 SELECT `users`.name, `users`.day, eggs_count.eggs FROM   `users`  JOIN  (SELECT DISTINCT `day`, `eggs` FROM `eggs`) AS eggs_count  ON `users`.day = eggs_count.day;  

Значения яиц во второй таблице не могут отличаться для одного и того же дня, потому что в этом случае сопоставить значения будет невозможно.