2014-03-18 106 views
0

我知道這對一些人來說可能很簡單,但是我很難用這個。我只是想將兩列加在一起。我的第一個數字是「FirstShift」= 90,「SecondShift」= 100。爲什麼我沒有得到190?我應該看到我的23條記錄都有不同的值,190是我的最高記錄。TSQL添加兩個數字

SELECT 
    [FirstShift] + [SecondShift] AS [Total Counted] 
FROM 

感謝

+0

這兩個列都有一個數字數據類型' –

+0

yeup,只是數字。我得到像他們90100的串聯。 – Frater

+1

應該工作:http://sqlfiddle.com/#!3/df6a8/1 –

回答

3

如果這些都不是數字字段,你將不得不解決您的架構,或者將它們轉換爲數字字段。

如果您不想修復您的模式,請嘗試將您的查詢更改爲此。

SELECT 
    CAST([FirstShift] AS DECIMAL) + CAST([SecondShift] AS DECIMAL) AS [Total Counted] 
FROM 
3

好吧...... 「真是」 一舉兩得代表[FirstShift]和表列[SecondShift]有一個數字數據類型?

我知道它被問了,但你真的認爲你說的是​​什麼嗎?

如果任何一個字段是字符串,那麼「+」運算符將充當「連接符」。 如果兩個領域是數字它將作爲一個「和」操作行爲...

Table [A] 
[FirstShift] VARCHAR(10) holds value "90" 
[SecondShift] VARCHAR(10) holds value "100" 

[FirstShift] + [SecondShift] ==> "90100" 

鑑於

Table [A] 
[FirstShift] INTEGER(10) holds value 90 
[SecondShift] INTEGER(10) holds value 100 

[FirstShift] + [SecondShift] ==> 190