У меня есть две таблицы с одинаковой структурой.mysql - обновление строк между таблицами
old_table выглядит (пример, а не фактическое таблицу), как это:
Name - DOB - id
John - xxxx - 344
new_table выглядит следующим образом:.
Name - DOB - id
John - 1980 - 344
Если new_table имеет столбец DOB заполняется в поле ID (уникальный), а остальная часть структуры одинакова между таблицами. Я хочу обновить поля DOB в old_table со значениями из new_table, где поля ID одинаковы (поэтому в приведенном выше примере, где «id» = 344 и т. Д. Для всех строк и идентификаторов).
Я думал об использовании: INSERT INTO old_table (DOB) SELECT DOB FROM new_table WHERE ...
, но потом мой MySQL знание замолкает. Должен ли я использовать INSERT или я могу использовать UPDATE здесь? И как мне только вытащить значение DOB из old_table, где поле ID = поле идентификатора new_table?
Спасибо ..
это отлично работает, но что, если я хочу только обновлять строки WHERE old_table.DOB = 'xxxx' AND old_table.field4 = '-'? – themerlinproject
@ user410341: Просто добавьте эти условия в предложение 'WHERE'. См. Мое редактирование. –