表中的a列中的数据大致如下:s2006112,h20061113,s2006114.....
现在我要将a列转换成int类型,让它变成自增的标识列,所有的字符可以去除仅保留数字,请问我该如何一次性更新a列?
即想一次性转换成:2006112,20061113,2006114.....
现在我要将a列转换成int类型,让它变成自增的标识列,所有的字符可以去除仅保留数字,请问我该如何一次性更新a列?
即想一次性转换成:2006112,20061113,2006114.....
create function get_int(@str varchar(100))
returns varchar(100)
as
begin
declare @i int
set @i=0
while @i<len(@str)
beginif isnumeric(substring(@str,1,1))=0
set @str=stuff(@str,1,1,'')set @i=@i+1
endreturn @str
endselect dbo.get_int('s2006114')update 表 set id列=cast(dbo.get_int(原来列) as int)