4

我有一个表Emp分别有一个NameSalary列。我想在MSSQL中将每个薪水提高 15% 。

下面的查询仅针对单个更新,我仍然无法完成...

UPDATE    Emp
SET       Salary = '(@Salary / 100) * 15 + @salary'

WHERE Name='Zangiv'

我需要一个查询语句来一次更新多行。

提前致谢

4

7 回答 7

6
UPDATE Emp
SET salary = salary * 1.15
WHERE Name = 'Zangiv'
于 2012-09-11T18:32:15.197 回答
3

鉴于您提出的要求:

我想在 MSSQL 中将每个薪水提高 15%

以下查询将使所有薪水增加 15%。

UPDATE    Emp
SET       Salary = Salary * 1.15

如果您实际上不想更新表中的所有行,请酌情使用WHERE子句。

于 2012-09-11T18:31:56.777 回答
3

根据您的意思是“具有名称的多行Zangiv”还是所有行:

UPDATE dbo.Emp
SET Salary = Salary * 1.15
--WHERE Name = 'Zangiv';
于 2012-09-11T18:32:07.813 回答
2
UPDATE Emp SET Salary = Salary * 1.15;

将所有员工的工资提高15%;

于 2012-09-11T18:32:03.617 回答
2

SQL 2008 起

UPDATE Emp
SET Salary *= 1.15

否则

UPDATE Emp
SET Salary = Salary * 1.15
于 2012-09-11T18:34:34.767 回答
1

查询以更新单个特定行

UPDATE Emp
SET Salary = Salary*15/100
WHERE Name = 'Zangiv'

查询更新所有行

UPDATE Emp SET Salary = Salary*15/100
于 2015-04-04T19:32:59.187 回答
-1

我做了同样的事情而不是增加我将价值降低了 20%,就像这样

SET 成本 = 成本 - (成本 * 0.20) 其中序列号 = 'mmmmmm'

于 2016-09-07T14:27:52.043 回答