таблица1 - столбцы: идентификатор, дата,
table2 - столбцы: id, дата, img, auth, moder, теги, посещения
таблица1 - 1200 строк
table2 - 1000 строк
Я хочу скопировать отсутствующие столбцы из таблицы 2 в таблицу 1 (img, auth, moder, теги, посещения).
независимо от значений (это все тестовые данные, не имеет значения, какое значение находится в определенной строке).
Я попытался сначала создать отсутствующие столбцы в таблице 1, а затем:
insert into table1 (img, auth, moder, tags, visits) select img, auth, moder, tags, visits from table2;
Но это вставляет новые строки в table1. Я не хочу новых строк - просто добавьте новые столбцы, содержащие данные из таблицы2.
Похоже, что здесь вы хотите получить обновление, а не вставку, поскольку на самом деле вы не хотите добавлять новые записи, просто измените уже существующие.
UPDATE table1 t1
INNER JOIN table2 t2
ON t1.id = t2.id AND t1.date = t2.date
SET
t1.img = t2.img,
t1.auth = t2.auth,
t1.moder = t2.moder,
t1.tags = t2.tags,
t1.visits = t2.visits;
использовать обновление
update table1
join table2 on table1.id=table2.id and table1.date=table2.date
set tabl1.img=tabl2.img, table1.auth=table2.auth, table1.moder=table1.moder,
table1.tags=table2,tags, table1.visits=table2.visits
JOIN ON t1.id = t2.id and...
это не обязательно. t1.id может быть любым идентификатором, а t2.id может быть любым идентификатором.