加薪的SQL查询

Ani*_*man 5 sql

我想出了以下查询,解决起来并不那么具有挑战性,但我仍然认为可能有更好的方法。有什么建议吗?

我有下表:

tb_Salary

EmpID DeptID Salary
---------------------
1  1  20000
2  1  20000
3  2  30000
4  2  800
5  2  200
Run Code Online (Sandbox Code Playgroud)

我想将员工的工资增加卢比。1000只在部门平均工资超过35000的时候。

这可以使用单个更新查询吗?

我按照以下方式做到了这一点。但似乎这不是那么聪明的解决方案。

UPDATE  tb_Salary t1
SET  t1.Salary=t1.Salary+1000
WHERE  35000 < (select AVG(t2.Salary) from tb_Salary t2 WHERE t2.DeptID=t1.DeptID)
Run Code Online (Sandbox Code Playgroud)

Ter*_*uys 3

您的查询就是要走的路。