添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
select Id + ':' + roll from test
2 个评论
在SQL Server中, + 意味着为所有的int字段添加,它将尝试将任何文本转换为值(在你的例子中为':')。 这意味着如果你的 Id Roll 是int,你需要先把它转换为文本。
在连接之前,将整数值转换为char。
sql
sql-server-2008
Red Devil
Red Devil
发布于 2016-09-22
2 个回答
TheGameiswar
TheGameiswar
发布于 2016-09-22
已采纳
0 人赞同

这个问题在评论中已经回答过了,但为了完整起见,你可以做以下工作

select cast(Id as varchar(1)) + ':' + cast(roll  as varchar(10)) from test
    
Jens
Jens
发布于 2016-09-22
0 人赞同

为了完整起见。

使用SQL Server 2012及以上版本的人可以使用 CONCAT 来实现,不需要任何显式转换。

SELECT CONCAT(15, ':', 10);

也会产生成。

15:10

作为一个额外的奖励,CONCAT将原生地处理任何NULL值,而不是完全杀死你的结果。

SELECT CONCAT('Oh snap, there might be a NULL value', NULL, ' somewhere in here!', 11, '!!');