+ -
当前位置:首页 → 问答吧 → 编号升级问题

编号升级问题

时间:2011-12-08

来源:互联网

有如下一组左边的档案编号,我想升级成右边一组。(升成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

作者: rmj0515   发布时间: 2011-12-08

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)

作者: HEROWANG   发布时间: 2011-12-08

select right('000000000000000'+id,3) 
你应该只改前面99行就行了 。后面都一样。

作者: jinfengyiye   发布时间: 2011-12-08

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

作者: fredrickhu   发布时间: 2011-12-08

+1
引用 3 楼 fredrickhu 的回复:
SQL code
select left(col,8)+ right((1000+cast(substring(col,charindex('-',col,6)+1,len(col)) as int)),3) from tb

作者: q465897859   发布时间: 2011-12-08