日期:2014-05-18  浏览次数:20545 次

编号升级问题
有如下一组左边的档案编号,我想升级成右边一组。(升成3位)求sql语句?
档案编号 档案编号
HZ21-1项-1 HZ21-1项-001
HZ21-1项-2 HZ21-1项-002
HZ21-1项-3 HZ21-1项-003
HZ21-1项-4 HZ21-1项-004
HZ21-1项-5 HZ21-1项-005
HZ21-1项-6 HZ21-1项-006
HZ21-1项-7 HZ21-1项-007
HZ21-1项-8 HZ21-1项-008
HZ21-1项-9 HZ21-1项-009
HZ21-1项-10 HZ21-1项-010
HZ21-1项-11 HZ21-1项-011
HZ21-1项-12 HZ21-1项-012
HZ21-1项-13 HZ21-1项-013
HZ21-1项-14 HZ21-1项-014
HZ21-1项-15 HZ21-1项-015
HZ21-1项-16 HZ21-1项-016
HZ21-1项-17 HZ21-1项-017
HZ21-1项-18 HZ21-1项-018
HZ21-1项-19 HZ21-1项-019
HZ21-1项-20 HZ21-1项-020
HZ21-1项-100 HZ21-1项-100
HZ21-1项-101 HZ21-1项-101
HZ21-1项-102 HZ21-1项-102
HZ21-1项-103 HZ21-1项-103
HZ21-1项-104 HZ21-1项-104



------解决方案--------------------
declare @col nvarchar(100)

select @col='HZ21-1项-1'


select left(@col,8)+ right((1000+cast(substring(@col,charindex('-',@col,6)+1,len(@col)) as int)),3)
------解决方案--------------------
SQL code
select left(col,8)+ right((1000+cast(substring(col,charindex('-',col,6)+1,len(col)) as int)),3) from tb