添加 number + varchar 以获取字符串连接

Mar*_*wda 2 sql t-sql sql-server

如何在 SQL Server 中添加 5596 + 00003 以获得 559600003?

我尝试使用以下查询:

select 5596 + '00003'
Run Code Online (Sandbox Code Playgroud)

但它给出了 5599,我希望它显示 559600003。

Yog*_*rma 8

您还可以使用CONCAT()

SELECT CONCAT(5596, '00003')
Run Code Online (Sandbox Code Playgroud)

CONCAT() 不需要任何显式转换。

  • 我更喜欢这个解决方案。 (3认同)

Dal*_*e K 5

SQL Server 尝试以计算的第一部分的数据类型返回结果,在您的情况下是数字。它可以愉快地将计算的第二部分转换为数字,因此这样做。

要获得您想要的结果,您必须将计算的第一部分转换为字符串,例如

select convert(varchar, 5596) + '00003'
Run Code Online (Sandbox Code Playgroud)

注意:convert(varchar,x)使用默认长度 30,这对于大多数数字来说可能已经足够了。

CONCAT(),因为在其他答案之一中可能是更好的解决方案。