sql中数字转化成字符串显示问题即如何显示0001类似ID

类似以下代码declare@achar(4)set@a='0001'selectlen(@a)select@a--示0001set@a=@a+0001select@a--... 类似以下代码
declare @a char(4)
set @a='0001'
select len(@a)
select @a --示0001
set @a=@a+0001
select @a --显示2- -怎么让这个数显示0002?
展开
 我来答
百度网友47a162c58
2008-03-03 · TA获得超过196个赞
知道小有建树答主
回答量:264
采纳率:0%
帮助的人:257万
展开全部
我不是特别明白你的意思,但我知道你是想让字符串0001加变成0002,下面是我自己现在用的一段代码,主要是用来实现订单编号的,
例如AB-12345加1后是AB-12346,
AB-99999加1后是AC-00001
AZ-99999加1后是BA-00001
不但数字可以进位,字母也可以.
<%
'*************************************************
'函数名:StrToAscToStr
'作 用:字符串加1运算,实现自动化订单号功能
'参 数:str ----原字符串
' 字符串格式---- AB-12345
'返回值:字符串加1运算
'*************************************************

Function StrToAscToStr(str)
if str<>"" then
strA=mid(str,1,1)
strB=mid(str,2,1)
strN=mid(str,4,5)
if strN<99999 then
strN=strN+1
if len(strN)=1 then
strN="0000"&strN
elseif len(strN)=2 then
strN="000"&strN
elseif len(strN)=3 then
strN="00"&strN
elseif len(strN)=4 then
strN="0"&strN
end if
else
strN="00001"
if strB<>"Z" then
strB=chr(asc(strB)+1)
else
strB="A"
if strA<>"Z" then
strA=chr(asc(strA)+1)
else
strA="超出范围"
end if
end if
end if

StrToAscToStr=strA&strB&"-"&strN
else
StrToAscToStr="AA-00001"
end if
End Function
%>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式