如何在SQL Server中乘以列值?

时间:2014-05-30 10:04:12

标签: sql sql-server

我想在表格中加倍C列的值。是否有内置功能来实现这一目标?

当前表格

       A  B  C
    X  1  2  3
    Y  4  5  6
    Z  7  8  9

运行T-SQL或任何查询表后,值应如下所示

   A  B  C
X  1  2  6
Y  4  5  12
Z  7  8  18

3 个答案:

答案 0 :(得分:3)

  1. 选择数据:

    SELECT A,B,C*2 as C
    FROM TableName
    

    结果:

    A   B   C
    1   2   6
    4   5   12
    7   8   18
    

    请参阅SQL Fiddle中的结果。

  2. 如果您想更新表:

    UPDATE TableName
    SET C=(C * 2)
    

答案 1 :(得分:1)

SELECT A, B, C *2 AS C
FROM TABLE_NAME

使用Integer数据类型,就像在任何其他编程语言中一样,只需乘以除数或将常量添加到列名称即可。

答案 2 :(得分:1)

将C乘以2(我的意思是c*2)会产生任何问题

select A,  B,  C * 2 as c
from your_table

(OR)

如果需要,可以创建自己的标量UDF,它将返回双值

create function doubleval(@val int)
returns int
as
begin
return @val * 2;
end 

然后,在您的选择中将其用作

select A,  B,  doubleval(C) as c
from your_table