У меня есть 2 разных базы данных на моем сервере MySql.Mysql: Обновить таблицу с выбором макс другой таблицы
First table DB1.contacts:
id | name | code
1 | foo | 157
2 | foo | 95
3 | foo | 210
Second table DB2.paperworks:
id | name | contact_id
1 | foo | 0
Я хотел бы обновить DB2.paperworks, установите DB2.paperworks.contact_id = макс (DB1.contacts.code) таблицы DB1.contacts.contacts где DB2.paperworks.name = DB1.contacts.name
Мой desidered вывод должен быть:
Вторая таблица после DB2.paperworks запроса:
id | name | contact_id
1 | foo | 210
Это мой запрос:
UPDATE DB2.paperworks
JOIN DB1.contacts
ON DB2.paperworks.name = DB1.contacts.name
SET DB2.paperworks.contact_id = DB1.contacts.code
Я не понимаю, как написать che "MAX (code)" состояние. Не могли бы вы мне помочь?
не обязательно дублировать, так как это также может быть сделано с помощью простого обновления с помощью связанного подзапроса, а как показано в ответе ниже. – SlimsGhost
@SlimsGhost, в большинстве вопросов есть несколько возможных ответов. Это не значит, что у них не может быть дубликатов. Я просто пытаюсь направить OP на ответ на вопрос, который кажется соответствующим его собственному. – Chris
@ Крис, справедливо, просто не хотел, чтобы он закрывался только указателем на то, что не может быть желательным ответом. – SlimsGhost