2010-07-21 79 views
0

如何在SQL Server中增加兩種類型?T-SQL如何乘以兩種不同的數據類型?

我有一列成本,其數據類型爲money,另一列integer列有這些產品的數量。

如何將這兩個值相乘以得到表示成本的值?

實施例:$2000 * 2

+3

你試過了嗎?你的問題是什麼? – Incognito 2010-07-21 19:16:03

+3

我希望OP不會將「money」存儲爲字符串「$ 2000」,如示例 – 2010-07-21 19:19:15

+0

[CAST和CONVERT(Transact-SQL)](http://msdn.microsoft.com/zh-cn/ library/ms187928.aspx)閱讀'Implicit Conversions'部分 – 2010-07-21 19:30:47

回答

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. 
+0

您不需要'CONVERT',這個工作是一樣的:'SELECT @UNITS * @unitcost as Total' – 2010-07-21 19:15:02

+0

意識到我寫完後:) – JNK 2010-07-21 19:16:42

4

使用:

SELECT t.number_of_items * t.cost_of_item AS total_cost 
    FROM PRODUCTS t 
0

Dependantly類型明確皈依將發生(如@KM註釋)的。

隱式轉換由SQL Server自動完成(這是您的情況)。如果不可能發生錯誤

顯式轉換由開發人員完成(在SQL服務器中使用CASTCONVERT)。如果轉換不可行發生錯誤

欲瞭解更多信息,請參閱SQL Server CAST and CONVERT help

相關問題