日期:2014-05-17  浏览次数:20500 次

这个修改的SQL语句如何写?
表里有一列
SinaAppThird_LongBottom_2000200
SinaAppThird_LongBottom_2100200
SinaAppThird_Long_2000200
SinaAppThird_Long_2100200
SinaAppThird_Short_2100200
SinaAppThird_ShortBottom_2000200
...
如何把最后的数字的第二位全部改成0 
比如 2100200 改成2000200

------解决方案--------------------
SQL code
declare @str varchar(100)
set @str='SinaAppThird_ShortBottom_2100200'
select stuff(@str,LEN(@str)-charindex('_',REVERSE(@str))+3,1,'0')

------解决方案--------------------
SQL code

declare @str nvarchar(100)
set @str = 'SinaAppThird_ShortBottom_2100200'

select stuff(@str,patindex('%[0-9]%',@str)+patindex('%[0-9]%',right(@str,len(@str)-patindex('%[0-9]%',@str))),1,'0')

/********************

SinaAppThird_ShortBottom_2000200

------解决方案--------------------
SQL code

declare @str nvarchar(4000)
set @str = 'SinaAppThird_ShortBottom_2100200'
select stuff(@str,patindex('%[0-9]%',@str)+patindex('%[0-9]%',right(@str,len(@str)-patindex('%[0-9]%',@str))),1,'0')