2013-08-21 2 views
0

Как обновить все сотрудника departmentID, который принадлежит department код 500 к коду отдела 503Обновление идентификатора с некоторым полем идентификатора в другой таблице

** tHREmployee

> EmployeeId #.......Employeee.........DepartmentID 
...101...............Ajith.............101 
...102...............Arathy ...........Null 
...103...............Arurna............102 
...104...............Ambily............101 
...105...............Anjaly............Null 
...106...............Babitha...........103 

** tHRDepartment

DepartmentID #.............Code 
101........................500 
102........................501 
103........................502 
105........................503 
.. 

ответ

1
DECLARE @CodeFrom AS INT 
DECLARE @CodeTo AS INT 

SET @CodeFrom = 500 
SET @CodeTo= 503 

UPDATE tHREmployee 
SET DepartmentID = (
          SELECT DepartmentID 
          FROM tHRDepartment 
          WHERE Code = @CodeTo 
        ) 
FROM tHREmployee E 
     JOIN tHRDepartment D 
     ON E.DepartmentID = D.DepartmentID 
WHERE D.Code = @CodeFrom 
+0

+1 для лучшего ответа – Milen

+0

Спасибо большое :)) – sameerag

0

О нас:

Declare @NewDepID int 
Select @NewDepID = DepartmentID from Departments Where DepartmentCode = 503 

update tHREmployee 
Set DepartmentID = @NewDepID 
Where DepartmentID in (Select DepartmentID from Departments Where DepartmentCode = 500) 
+0

, но отдел ID не может указать конкретную ценность из DepartmentID. – sameerag

+0

, если вы знаете только код ... – Milen

0

Обновление отдела TREREWELLER SETID = 105 WHERE DepartmentID = 101;

Смежные вопросы