SQL Server货币单元格*百分比单元格



只是一个快速的问题,假设您在一个表中有多行值和多行百分比,例如1是£1000,百分比是100%。我想用SQL查询来计算。

SELECT SUM(Table1.money* Table2.percentage)Answer FROM Table1
INNER JOIN Table2 ON Table1.ID= Table2.ID
WHERE ID2= 3;

上面的SQL语句基本上会把钱* 100,给我一个10,000英镑的价值,这是不正确的,似乎不能让我的头在一个简单的方法,感谢任何帮助的家伙

我想按百分比计算这笔钱,所以在这种情况下,答案应该是£2000,因为它是*价值的100%。如果百分比是50%,我预计答案是1500英镑,以此类推....

顾名思义,100% = 1,即整体。如果你在一列中有一个百分比,在做任何数学运算之前,你应该把它除以100。我建议:

SELECT 
    SUM(
            Table1.money * (1+(Table2.percentage/100.0))
       ) Answer 
FROM Table1
INNER JOIN Table2 
     ON Table1.ID= Table2.ID
WHERE ID2= 3;

最新更新