У меня есть две таблицы.Запрос на обновление сервера Sql
Table A
:
name empid city
-----------------------------------
Joesph Morgan JM2345 New york
Table B
:
name
--------------
Morgan, Joseph
Теперь я хочу, чтобы добавить столбец в B, который будет содержать empid
.
Я мог бы присоединиться к таблицам на основе столбца имен, но разница в формате затрудняет для меня.
Я был первым изменением названия B таблицы, в формате Имя Фамилия и получать данные в недавно созданной EmpId колонке в B.
Но я не хочу, чтобы изменить формат данных.
Я сделал следующие шаги.
Alter Table B
Add Empid varchar(10)
Update table B
set name=CONCAT(REPLACE(SUBSTRING([name], CHARINDEX(',', [name]), LEN([name])), ',', ''),' ',LEFT([name], CHARINDEX(',', [name]) - 1)
Update table B
set empid=A.empid
where B.name=A.name
Пожалуйста, предложите мне способ, которым столбец имени останется таким, какой он есть.
Исправьте данные. Добавьте внешние ключи и/или определите empid в одной таблице и используйте их в других местах вместо имени. В противном случае вы просто ждете проблем. –