Заполнение столбцов - MySQL
Формулировка задачи:
Есть 7 столбцов.employee_id,first_name,last_name,manager_id,manager_fname,manager_lname.
Как добавить в manager_fname,manager_lname значения из first_name,last_name?
Решение задачи: «Заполнение столбцов»
textual
Листинг программы
UPDATE TABLE_NAME AS t1 JOIN TABLE_NAME AS t2 ON t1.employee_id = t2.manager_id SET t2.manager_fname = t1.first_name, t2.manager_lname = t1.last_name
Объяснение кода листинга программы
В представленном коде выполняется обновление данных в таблице TABLE_NAME с помощью операции UPDATE. Для этого используется условие объединения (JOIN) двух таблиц TABLE_NAME по полю employee_id и manager_id.
- UPDATE - операция обновления данных в таблице
- TABLE_NAME - название таблицы, в которой происходит обновление
- AS t1 - создание псевдонима для первой таблицы
- JOIN - операция объединения двух таблиц
- TABLE_NAME - название второй таблицы
- ON t1.employee_id = t2.manager_id - условие объединения по полям
employee_idиmanager_id - SET - начало списка полей, которые нужно обновить
- t2.manager_fname = t1.first_name - обновление поля
manager_fnameзначениями из поляfirst_name - t2.manager_lname = t1.last_name - обновление поля
manager_lnameзначениями из поляlast_name - END - конец списка полей для обновления
Таким образом, в результате выполнения данного кода значения полей
manager_fnameиmanager_lnameв таблицеTABLE_NAMEбудут заменены на соответствующие значения из полейfirst_nameиlast_nameтаблицыTABLE_NAME.