admin

将零连接到sql server select值仍显示4位而不是5

sql

我的邮政编码在导入时没有来自excel文件的零。所以我要进行选择,以将0连接到每4位邮政编码的前面。

我正在尝试此操作,但仍会吐出4位数字

   (0 + [ZIP]) as 'fullzip'

ZIP是db表中的浮点数

我完整的SQL

SELECT
    TOP 1000
   [ZIP]
  ,(0 + [ZIP]) as 'fullzip'
  ,[ZIP_Name]
  ,[ZIP_CountyFIPS]
  ,[ZIP_County]
  ,[ZIP_State]
  ,[Utility_Name]
  ,[Holding_Company]
  ,[Utility_ID]
  ,[GAS_LDC_Type]
  ,[ELEC_Non_IOU_Type]
  ,[Percent_of_Overlap]
  ,[Utility_Territory_Type]
FROM
    cc.dbo.ServiceableZipCodes
WHERE
    Len( [ZIP] ) = 4

阅读 214

收藏
2021-07-01

共1个答案

admin

如果zip是浮点型,我将转换为char,然后进行字符串数学运算。

RIGHT( '00000' + CONVERT(varchar(5),ZIP), 5)

不假定最小值为4位数字。

2021-07-01