计算列应该是字符串

OrE*_*lse 6 sql string sql-server-2005 calculated-columns

这是我的数据库的快照.

col1和col2都声明为int.

我的ComputedColumn目前添加了第1列和第2列,如下所示......

col1  col2  ComputedColumn
1     2     3
4     1     5
Run Code Online (Sandbox Code Playgroud)

而不是这个,我的ComputedColumn应该加入第1列和第2列(包括中间的' - '字符),如下所示......

col1  col2  ComputedColumn
1     2     1-2
4     1     4-1
Run Code Online (Sandbox Code Playgroud)

那么,正确的语法是什么?

Dat*_*han 9

您可能将计算列定义为col1+col2.试试吧CAST(col1 AS NVARCHAR(MAX))+'-'+CAST(col2 AS NVARCHAR(MAX)).

或者,如果你愿意,你可以替换NVARCHAR(MAX)使用NVARCHAR(10)或不同长度的选择.