我想编写一个存储过程,我可以根据以下条件更新表。
Table
EmployeeID GroupID Group#
123 G123 3
456 G456 3
789 G789 3
101 G101 3
View
GroupID_Granular GroupID_Middle GroupID_Executive
G123 M123 E123
G789 M789 E789
如果在View的GroupID_Granular列中找到GroupID,请更新表,设置GroupID = GroupID_Executive并将Group#设置为1。
我不确定如何检查/比较,然后运行Update cmd。
谢谢
答案 0 :(得分:5)
使用JOIN
:
UPDATE t
SET
t.GroupID = v.GroupID_Executive,
t.[Group#] = 1
FROM YourTable t
JOIN YourView v ON v.GroupID_Granular = t.GroupID