Sql 将字符串值附加到Int列

Sql 将字符串值附加到Int列,sql,sql-server,Sql,Sql Server,我运行的查询只是一个简单的Select语句,如何(从查询中)向我的int列追加一个值?我已尝试了以下操作,但不断出现此错误: Msg 245,16级,状态1,第1行 将varchar值“Month”转换为数据类型为int的列时出现语法错误 SELECT a.Sales, SUM(a.Count) As Count, CONVERT(INT, 'Month ') + dt.CumulativeMonth FROM Rep a INNER JOIN Date dt ON a.Date = dt.FD

我运行的查询只是一个简单的Select语句,如何(从查询中)向我的int列追加一个值?我已尝试了以下操作,但不断出现此错误: Msg 245,16级,状态1,第1行 将varchar值“Month”转换为数据类型为int的列时出现语法错误

SELECT a.Sales, SUM(a.Count) As Count, CONVERT(INT, 'Month ') + dt.CumulativeMonth
FROM Rep a
INNER JOIN Date dt
ON a.Date = dt.FD
GROUP BY dt.CumulativeMonth, a.Sales
给你

SELECT a.Sales, SUM(a.Count) As Count, 'Month ' + CONVERT(VARCHAR(20), dt.CumulativeMonth)
FROM Rep a
INNER JOIN Date dt
ON a.Date = dt.FD
GROUP BY dt.CumulativeMonth, a.Sales

加法/算术优先于字符串连接。为了让SQL Server明白您想要加入字符串而不是添加,您应该将月份转换为字符串,例如
convert(VARCHAR(2),dt.CumulativeMonth)
。不确定为什么要将
'Month'
转换为整数。这到底是怎么回事?我只想把文本月份附加到数字月份值的开头。我不能修改这个表,所以我想我只能在Select语句中修改它。@Shiva是的,为我的错误道歉。