sql中如何在插入数时不足位数前加0
我想在插入数据的时候就同时实现插入不足位数的前面加0,因为数据比较大,所以要一次插入1w条数据,怎么能实现呢,我的代码是这样的declare@nintset@n=0whi...
我想在插入数据的时候就同时实现插入不足位数的前面加0,因为数据比较大,所以要一次插入1w条数据,怎么能实现呢,我的代码是这样的declare @n int
set @n = 0
while @n < 9999
begin
set @n = @n+1
declare @m char(10)
insert into temp(Number,Notic) values(@m,'0')
end
但是怎么在前面加0不知道,Number这个字段是char型的
上面的代码少了一行
正确的是
declare @n int
set @n = 0
while @n < 9999
begin
set @n = @n+1
insert into temp(Number,Notic) values(@m,'0')
end 展开
set @n = 0
while @n < 9999
begin
set @n = @n+1
declare @m char(10)
insert into temp(Number,Notic) values(@m,'0')
end
但是怎么在前面加0不知道,Number这个字段是char型的
上面的代码少了一行
正确的是
declare @n int
set @n = 0
while @n < 9999
begin
set @n = @n+1
insert into temp(Number,Notic) values(@m,'0')
end 展开
4个回答
展开全部
不足位数前加0,位数是几位啊,我就认为是5位了哦,插入的数据为number
select right('00000'+convert(varchar,number),5)
select right('00000'+convert(varchar,number),5)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是想要这个样子的吗
declare @n varchar(10)
set @n = '000'
while @n < 9999
begin
set @n = @n+1
while len(@n)<4 /*需要的位数*/
begin
select @n='0'+@n
end
insert into temp(Number,Notic) values(@n,'0')
--print @n
end
declare @n varchar(10)
set @n = '000'
while @n < 9999
begin
set @n = @n+1
while len(@n)<4 /*需要的位数*/
begin
select @n='0'+@n
end
insert into temp(Number,Notic) values(@n,'0')
--print @n
end
追问
恩 是这样 实现了我想要的功能 谢谢啦
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.使用LPAD函数
2.使用case
3.提供函数,判断长度,不足补0.
2.使用case
3.提供函数,判断长度,不足补0.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询