如何在SQL Server中将两种类型相乘?
我有一列有费用,其数据类型为money
,另一列有integer
列,其中包含这些产品的数量。
如何将这两个值相乘以得到代表成本的值?
示例:$2000 * 2
答案 0 :(得分:4)
使用:
SELECT t.number_of_items * t.cost_of_item AS total_cost
FROM PRODUCTS t
答案 1 :(得分:1)
DECLARE @UNITS int
DECLARE @UnitCost money
SET @UNITS = 100
SET @UnitCost = 2.20
SELECT (@UNITS * CONVERT(decimal(18,2), @unitcost)) as Total
Replace the @variables with your column names.
答案 2 :(得分:0)
依赖于隐式或显式转换类型(如@KM所评论)。
隐式转换由SQL Server自动完成(这是您的情况)。如果不可能发生错误。
显式转换由开发人员完成(在SQL Server中使用CAST
或CONVERT
)。如果无法进行转换,则会发生错误。
有关详细信息,请参阅SQL Server CAST and CONVERT help。