将列中的每个条目乘以 SQL 中的固定数字

问题描述 投票:0回答:3

在 SQL 中,假设我有一个具有以下布局的表:

id    name      age
1     george    12
2     tom       14
3     charles   19
4     henry     21
5     fiona     12
6     kate      14
...

如果我发现我犯了一个可怕的输入错误,而且每个人的年龄实际上都是他们的两倍,有没有一种方法可以一次性将

age
列乘以 2,而不是需要费力地遍历整个列并单独编辑每个年龄(假设我有 500 个条目,所以手动工作是不可能的)。

有SQL解决方案吗?

sql
3个回答
36
投票

这真的很简单:

UPDATE table SET age=age*2

8
投票

是的,运行

update
:

update theTable set age = age * 2

根据数据库中的设置,可能不允许您在没有

update
的情况下运行
where
(以防止错误),然后您将添加一个虚拟比较:

update theTable set age = age * 2 where 1 = 1

0
投票

更改一个表中一列或两列的值的最佳方法是使用以下语法:注意:如果您的工作环真实数据,切勿错过Where条件

更新表名 SET Ag2 = 年龄 * 12, ...

WHERE 条件;

© www.soinside.com 2019 - 2024. All rights reserved.