我们如何在数字列feedback_refno的前缀中使用零,如
选择@refno ='0001'
我需要将这个值插入到该列的feedback_refno中,但它只插入1个..但我需要在那些前面加上那些前缀
我试过这样的
declare @refno int
select max(feedback_refno)+1 from EDK_Customer_Feedback(nolock)
if not exists(select feedback_refno from EDK_Customer_Feedback(nolock))
Begin
select @refno = '0001'
end
else
Begin
select @refno
End
insert into EDK_Customer_Feedback values(@refno)
我需要像0002那样的结果,然后就像那样,但是它会像2那样给出3 ..
有什么建议吗?
答案 0 :(得分:2)
试试这个
SELECT RIGHT('000'+ CONVERT(varchar,feedback_refno),4) AS NUM FROM EDK_Customer_Feedback;
答案 1 :(得分:1)
@refno
的类型为int
,因此前导零不起作用。如果您将其更改为varchar(4)
,则可以使用以下两个答案:
In SQL Server 2000 how do you add 0's to beginning of number to fill nchar(n)
In SQL Server 2000 how do you add {n} number of 0's to a nchar(n)?