Mar*_*wda 2 sql t-sql sql-server
如何在 SQL Server 中添加 5596 + 00003 以获得 559600003?
我尝试使用以下查询:
select 5596 + '00003'
Run Code Online (Sandbox Code Playgroud)
但它给出了 5599,我希望它显示 559600003。
您还可以使用CONCAT():
SELECT CONCAT(5596, '00003')
Run Code Online (Sandbox Code Playgroud)
CONCAT() 不需要任何显式转换。
SQL Server 尝试以计算的第一部分的数据类型返回结果,在您的情况下是数字。它可以愉快地将计算的第二部分转换为数字,因此这样做。
要获得您想要的结果,您必须将计算的第一部分转换为字符串,例如
select convert(varchar, 5596) + '00003'
Run Code Online (Sandbox Code Playgroud)
注意:convert(varchar,x)使用默认长度 30,这对于大多数数字来说可能已经足够了。
CONCAT(),因为在其他答案之一中可能是更好的解决方案。