我知道这对一些人来说可能很简单,但是我很难用这个。我只是想将两列加在一起。我的第一个数字是“FirstShift”= 90,“SecondShift”= 100。为什么我没有得到190?我应该看到我的23条记录都有不同的值,190是我的最高记录。TSQL添加两个数字
SELECT
[FirstShift] + [SecondShift] AS [Total Counted]
FROM
感谢
我知道这对一些人来说可能很简单,但是我很难用这个。我只是想将两列加在一起。我的第一个数字是“FirstShift”= 90,“SecondShift”= 100。为什么我没有得到190?我应该看到我的23条记录都有不同的值,190是我的最高记录。TSQL添加两个数字
SELECT
[FirstShift] + [SecondShift] AS [Total Counted]
FROM
感谢
如果这些都不是数字字段,你将不得不解决您的架构,或者将它们转换为数字字段。
如果您不想修复您的模式,请尝试将您的查询更改为此。
SELECT
CAST([FirstShift] AS DECIMAL) + CAST([SecondShift] AS DECIMAL) AS [Total Counted]
FROM
好吧...... “真是” 一举两得代表[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
这两个列都有一个数字数据类型' –
yeup,只是数字。我得到像他们90100的串联。 – Frater
应该工作:http://sqlfiddle.com/#!3/df6a8/1 –