Tsql 如何在SQL中使用前缀作为零?
我们如何在数字列反馈的前缀中使用零 选择@refno='0001' 我需要将此值插入到该列feedback_refno中,但它只是像1一样插入..但我需要那些前缀在那些1之前 我试过这样做Tsql 如何在SQL中使用前缀作为零?,tsql,sql-server-2008,Tsql,Sql Server 2008,我们如何在数字列反馈的前缀中使用零 选择@refno='0001' 我需要将此值插入到该列feedback_refno中,但它只是像1一样插入..但我需要那些前缀在那些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)
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然后0003这样的结果,但它给出的是像2然后3
有什么建议吗?试试这个
SELECT RIGHT('000'+ CONVERT(varchar,feedback_refno),4) AS NUM FROM EDK_Customer_Feedback;
@refno
属于int
类型,因此前导零不起作用。如果将其更改为varchar(4)
,则可以使用以下两个答案:
由于您将refno声明为int,因此它将始终将0001变为1。为什么参考编号为000[0-9]*如此重要?