将列添加到选择中以进行计算

时间:2014-02-06 13:30:44

标签: sql sql-server formula

我有一个表中的2列,我想添加第三列来输出计算结果

目前

select语句是:

select revenue, cost
from   costdata

我的2栏是收入和费用

表名:costdata

我的公式是:= ((revenue - cost)/ revenue)*100

我希望第三列被命名为'result'

关于如何在select语句中执行此操作的任何想法?

4 个答案:

答案 0 :(得分:2)

SELECT revenue
     , cost
     , ((revenue - cost) / revenue) * 100 As result
FROM   costdata

你在评论中提到你得到零除错误。当revenue等于零时,就会发生这种情况。

在这种情况下你想要发生什么取决于你,但这应该让你开始

SELECT revenue
     , cost
     , CASE WHEN revenue = 0 THEN
         0
       ELSE
         ((revenue - cost) / revenue) * 100
       END As result 
FROM   costdata

答案 1 :(得分:1)

尝试,

select revenue, cost,((revenue - cost)/ revenue)*100 AS result
from   costdata

答案 2 :(得分:1)

SELECT revenue, cost, ((revenue - cost)/ revenue)*100 AS result FROM costdata

答案 3 :(得分:1)

查询:

SELECT revenue, 
       cost,
       CASE WHEN revenue <> 0 
            THEN ((revenue - cost) / revenue) * 100
       ELSE 0 END As result
FROM   costdata