0

比如我查询数据库,

SELECT SALARY, WEEKLY_HOURS FROM EMPLOYEE WHERE EMP_ID = 999

然后我将 SALARY 和 WEEKLY_HOURS 与局部变量进行比较。如果我的本地值不同,我会运行更新查询:

UPDATE EMPLOYEE SET SALARY = 255, WEEKLY_HOURS = 72 WHERE EMP_ID = 999

如果值没有区别,我会跳过更新查询。

所以我的问题是,我是否能够在没有存储过程的情况下在一个查询中进行比较和更新?只是想节省一次往返。

谢谢。

4

1 回答 1

1
update e
set
 e.Salary = 255
 , e.Weekly_Hours = 72
from
 Employee e
where
 e.Emp_ID = 999
 and (
   e.Salary <> 255 or
   e.Weekly_Hours <> 72 )
于 2013-10-16T22:02:58.110 回答