При этом для всех DeptID сотрудника будет установлено значение 7, где DeptID равно 0
.
update Employee
set DeptID = 7
where DeptID = 0
Employee.DeptID
, вероятно, является внешним ключом от Department.DeptID
, поэтому сначала необходимо убедиться, что существует Department
с DeptID = 7
.
В ваших выборочных данных у вас есть отдел с именем 'RR'. Если это тот, который вы хотите использовать, но с DeptID = 7 вы можете сделать это следующим образом.
-- Add Department with DeptID = 7
insert into Department(DeptID, DepName)
select 7, DepName
from Department
where DeptID = 0
-- Change DeptID to 7 for Employee's with DeptID = 0
update Employee
set DeptID = 7
where DeptID = 0
-- Delete Department
delete Department
where DeptID = 0
Редактировать 1 Это также будет работать, но я не вижу смысла его использовать. Ваше заявление об обновлении изменено, чтобы обновлять только сотрудников с DeptID=0
update employee
set DeptID = 7
where
exists(select *
from Department
where (DeptID = 0)) and
DeptID = 0