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

如何查询字段里的数字

2013-08-16 
怎么查询字段里的数字例如colasd123531553115dg6181ert1531结果col12353155311561811531[解决办法]create

怎么查询字段里的数字
例如

col

asd123
5315
53115dg
6181ert1531

结果
col

123
5315
53115
61811531
[解决办法]

create Function [dbo].[fn_Number] (@texto varchar(100))
returns varchar(100)
as
begin
declare @s varchar(100),@i int
declare @v varchar(1)
set @i=1
set @s=''
while @i<=len(@texto)
begin
set @v=substring(@texto,@i,1)
set @s=@s+case when isnumeric(@v)=1 then @v else '' end
set @i=@i+1
end
return @s
End 

GO


;WITH cte AS (
select 'asd123' as col
union all select '5315'
union all select '53115dg'
union all select '6181ert1531'
)
select dbo.fn_number(col) from cte 

/*
123
5315
53115
61811531
*/

热点排行