首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql中部分字符如何转成数值加1

2013-11-16 
sql中部分字符怎么转成数值加1?比如有的字符型字段,存了个值内容:11-15,怎么让前面的数值加1,让他显示成

sql中部分字符怎么转成数值加1?
比如有的字符型字段,存了个值内容:  '11-15'  ,怎么让前面的数值加1,让他显示成 '12-15'呢?
[解决办法]


declare @s varchar(10)
set @s='111-15'
select ltrim(left(@s,charindex('-',@s)-1)+1)+right(@s,len(@s)-(charindex('-',@s)-1))
/*
112-15
*/

[解决办法]
引用:
不好意思,没看清,我是说这种写法是不是太长了?是不是还有更精简的写法


如果是数字长度固定是2位的,可以使用上面简单的写法,

如果长度不固定,那就简单不了了:

select cast(left('11-15',charindex('-','11-15')-1)+1 as varchar) +
       right('11-15',len('11-15')-charindex('-','11-15')+1)

[解决办法]

--不能再短了
declare @str varchar(10)
 
set @str='11-15'
 
select rtrim(Parsename(replace(@str,'-','.'),2)+1)+'-'+Parsename(replace(@str,'-','.'),1)

热点排行