因为4在某些人看来是不吉祥的数字,
所以在我最近的一个系统里面的数字
根据客户的要求得不出现4。
下面是我要说的问题的SQL表示:
declare @i int
select @i = abc from table
如果该@i数字里面有一个数字是4,则加1,直到无4为止。
比如:
@i = 1,则@i = 2
@i = 4,则@i = 5
@i = 34,则@i = 35
@i = 343,则@i = 350
以下是相关的解决办法:
declare @i int
set @i=3434567
select left(@i, case charindex('4',@i)-1
when -1 then len(@i)
else charindex('4',@i)-1
end)+
case charindex('4',@i)-1
when -1 then ''
else '5'
end+
REPLICATE('0',len(@i)-case charindex('4',@i)-1
when -1 then len(@i)
else charindex('4',@i)
end)
博客围绕系统中数字不能出现4的需求展开,给出了问题的SQL表示,即若变量@i数字里有4则加1直到无4,还提供了相关解决办法,通过SQL函数处理使数字满足要求。
5451

被折叠的 条评论
为什么被折叠?



