通过Sql Query更新具有条件的列

时间:2014-10-03 07:32:43

标签: sql

我有A B C D栏

我正在尝试使用除法功能更新C列

e.g。

如果C列包含值0.9,那么我想将该值更新为1 / 0.9 = 1.33333(将其四舍五入为1.3)

因此该列必须从0.9更新为1.3。

有没有办法通过SQL查询没有存储过程?

3 个答案:

答案 0 :(得分:1)

试试这个:

UPDATE table SET columnC = 1 / columnC where columnC = 0.9

答案 1 :(得分:1)

由于您尚未指明您正在使用哪个数据库,因此我将提供适用于mysql,postgres和sqlserver(涵盖大多数数据库实例)的查询:

UPDATE mytable SET
columnC = CAST( 1 / columnC AS DECIMAL(8,1))
WHERE columnC = 0.9

答案 2 :(得分:1)

如果不是,请记住将值转换为正确的值。

UPDATE tabl1e SET columnC = ROUND(1 / 0.9, 2) WHERE columnC = 0.9;

此外,1/0.9舍入到2位小数会产生1,11