Sql将整型列连接到字符串

Sql将整型列连接到字符串,sql,sql-server,Sql,Sql Server,我的表中有两个int列 我想把它们像字符串一样连接起来 例如:A=12345,B=2 我想返回123452 我该怎么做呢?试着这样做: select CAST(A as varchar(10)) + CAST(B as varchar(10)) 您可以使用下面的内容 SELECT NUMBER_COL1, NUMBER_COL2, CAST(NUMBER_COL1 AS VARCHAR(10)) + CAST(NUMBER_COL1 AS VARCHAR(10))

我的表中有两个int列

我想把它们像字符串一样连接起来

例如:
A=12345,B=2

我想返回
123452

我该怎么做呢?

试着这样做:

select CAST(A as varchar(10)) + CAST(B as varchar(10))

您可以使用下面的内容

SELECT NUMBER_COL1,
       NUMBER_COL2,
       CAST(NUMBER_COL1 AS VARCHAR(10)) + CAST(NUMBER_COL1 AS VARCHAR(10)) JOINED_NUM
  FROM TABLE;
使用此代码:

declare @a int
declare @b int

select @a='12345'
select @b='2'

select cast(@a as char(10))+cast(@b as char(10)) as Concatenation

但是你也可以使用数学函数。例如,在ORACLE SQL中:

SELECT A * Power( 10, Length(B) ) + B FROM DUAL;

但你为什么要这么做?!?首先强制转换为char,然后转换为concat。或使用
concat
。可能是我做的重复,但这会使我的查询变慢,你有更快的查询吗?@BrMe:-我想你运行的查询与我发布的查询不同。您正在尝试的查询是什么?哪些查询需要时间?另外,上面的查询足够快,我不认为你能比这更快地实现这一点。