我有一个包含以下属性的员工数据表
Id Emp_name Supervisor_Name Supervisor_id
1 A B
2 B
3 C B
我想更新Supervisor_Id列,Id值等于Supervisor_Name。输出如下。
Id Emp_name Supervisor_Name Supervisor_id
1 A B 2
2 B
3 C B 2
执行此操作的最佳SQL查询是什么
答案 0 :(得分:1)
INNER JOIN
使用UPDATE t1
SET t1.Supervisor_id = t2.Id
FROM mytable t1
INNER JOIN mytable t2 ON t1.Supervisor_Name = t2.Emp_name
语法:
{{1}}
http://www.hackviking.com/development/python-get-user-info-after-oauth/
答案 1 :(得分:1)
自我加入可以胜任
update e1
set e1.Supervisor_id=e.id
from Employee e1
join Employee e
on e1.Supervisor_Name =e.Emp_name