使用int列计算MS SQL Server中的百分比

Pat*_*ick 4 sql sql-server

我正在计算慈善机构的总金额.每行都有出价金额和慈善百分比.字段的结构如下所示:

CurrentBid INT CharityPercentage INT < - 0-100,其中100将捐赠给慈善机构

所以我试过这个:

SELECT CurrentBid, CharityPercentage, CurrentBid * (CharityPercentage / 100) AS TotalCharity FROM Items
Run Code Online (Sandbox Code Playgroud)

然而它产生了这个:

50  100 50
70  100 70
25  50  0
50  25  0
30  10  0
55  15  0
Run Code Online (Sandbox Code Playgroud)

只要百分比为100,它就可以工作.任何低于和低于0.我的猜测是它与int列有关.

关于如何解决它的任何想法?我也尝试在select语句中使用CAST转换int,但这不起作用.将INT列更改为其他内容是一个非常大的过程.

I a*_*ica 7

明确地将至少一个值设为小数:

CurrentBid * CharityPercentage / 100.0 AS TotalCharity
Run Code Online (Sandbox Code Playgroud)