如何用sql语句在字符串中添加字符
我这个是个档案管理系统,例如给个表的表名叫做gdwj,其中有个字段名交doc.no这个字段里所添加的数据是黑政司[2008]01号文件,现在我要打报表吧黑政司[2008]...
我这个是个档案管理系统,例如给个表的表名叫做gdwj,其中有个字段名交doc.no 这个字段里所添加的数据是黑政司[2008]01号文件,现在我要打报表吧黑政司[2008]01号文件到黑政司[2008]87号文件用报表打印出来,可是问题出现了。黑政司[2008]01到黑政司[2008]09,全写成了黑政司[2008]1到黑政司[2008]9,这时候打出来的报表顺序是用这个编号顺序升序排列打印的,可是打印的效果是黑政司[2008]10到黑政司[2008]87,黑政司[2008]1到黑政司[2008]9全在87号文件下面,我这个软件自带的SQL ANYWHERE。我想知道用SQL语句怎么能实现在黑政司[2008]1中的1前面补零,虽然条目不多可以一个个修改,可是如果将来文件多到向黑政司[2008]0001到黑政司[2008]9999这样的是时候那样就很麻烦了。希望有大虾指点下,方便的可以吧QQ也顺便留以下~!
大家互相学习共同进步啊!(PS:问题念起来有点绕口,敬请见谅!) 展开
大家互相学习共同进步啊!(PS:问题念起来有点绕口,敬请见谅!) 展开
2个回答
展开全部
Update gdwj Set [doc.no]=
SubString([doc.no],1,CharIndex(']',[doc.no]))
+(Case when Len(SubString([doc.no],CharIndex(']',[doc.no])+1,8))=1 then '000'
when Len(SubString([doc.no],CharIndex(']',[doc.no])+1,8))=2 then '00'
when Len(SubString([doc.no],CharIndex(']',[doc.no])+1,8))=3 then '0' end)
+SubString([doc.no],CharIndex(']',[doc.no])+1,8)
From gdwj
Where [doc.no] like '%黑政司[2008]%'
SubString([doc.no],1,CharIndex(']',[doc.no]))
+(Case when Len(SubString([doc.no],CharIndex(']',[doc.no])+1,8))=1 then '000'
when Len(SubString([doc.no],CharIndex(']',[doc.no])+1,8))=2 then '00'
when Len(SubString([doc.no],CharIndex(']',[doc.no])+1,8))=3 then '0' end)
+SubString([doc.no],CharIndex(']',[doc.no])+1,8)
From gdwj
Where [doc.no] like '%黑政司[2008]%'
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询