excel导入sql server 某列值前面补0

需求:
excel表的数据导入sqlserver,数据格式为8位数或9位数:12345678 或123456789,但是目标格式为9位数:012345678,123456789。
目标是9位,少几位就在左边补几个0

方法一:对已导入的数据通过sql语句解决
sql语句:

declare @num int=2215,@num2 int,@num3 nvarchar(max)
  
  while(@num<=2729)
  begin 
  set @num2 = (select [Person_UserName] FROM [Person_Info] where [Person_Id]=@num)
	set @num3 = RIGHT('000000000'+CONVERT(nvarchar(50),@num2),9)
	select RIGHT('000000000'+CONVERT(nvarchar(50),@num2),9)
	update [Person_Info] set [Person_UserName] = @num3 where [Person_Id]=@num
	set @num+=1
end

其中2215,2729是对目标区间的数据进行操作,即Person_Id在2215-2729之间的数据

方法二:还未导入数据,可对excel进行操作直接导入
在这里插入图片描述
1.点击空的列中的一个格子,然后输入表达式 =TEXT(B2,“000000000”)
B2代表你第一个数的位置,后面的参数表示你想要的格式,我希望的格式是9个0.你们根据需求自己修改成m个n都可以。
成功后可见第一个数补上一个0后在上面的空格子中出现
2.鼠标放置在格子的右下角,变成加号
在这里插入图片描述
3.按住后向下拖动,即可获得相对应的所有转换后的数据
在这里插入图片描述
4.把获得的新数据复制粘贴至原来数据的地方,粘贴时选择粘贴为数值即可。
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值