обновление (копирование) определенных значений столбцов из таблицы tmp в основную таблицу в Mysql

#mysql #sql

#mysql #sql

Вопрос:

У меня есть две таблицы.

tbl1

 id             int(11)      NOT NULL

userName       varchar(45)  NOT NULL

positionName   varchar(20)  NULL

positionId     int(11)      NULL
  

tmpTbl1

 id             int(11)      NOT NULL

userName       varchar(45)  NOT NULL

positionName   varchar(20)  NULL

positionId     int(11)      NULL
  

tbl1 Данные есть только в id userName столбцах и . для tmpTbl1 всех столбцов есть данные.

Я хочу скопировать positionName и positionId из tmpTbl1 в tbl1 .

Обе таблицы имеют одинаковые структуры, id и userName данные столбцов тоже одинаковы. Просто хочу обновить данные двух левых столбцов tbl1 .

Заранее спасибо.

Ответ №1:

Проверено быстро, но я думаю, что это сработает для вас

 UPDATE tbl1 t1, tmpTbl1 t2 
SET t1.positionName=t2.positionName, t1.positionId=t2.positionId 
WHERE t1.id=t2.id AND t1.userName=t2.userName;
  

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

1. Спасибо. Это работает. 🙂 примет ответ по истечении предельного времени. Большое вам спасибо.