我有一张这样的桌子
Declare @Temp Table(Data VarChar(20))
Insert Into @Temp Values('F_200_100_')
Insert Into @Temp Values('F_50_')
Insert Into @Temp Values('F_30_')
Insert Into @Temp Values('F_50_10')
Insert Into @Temp Values('F_100_')
Insert Into @Temp Values('F_20_')
我希望我的输出是从数据列中提取的数字的不同值
20
30
50
100
200
我尝试过使用 patindex,但我正在寻找尝试过的想法
select
Left(
SubString(Data, PatIndex('%[0-9]%', Data), 8000),
PatIndex('%[^0-9]%', SubString(Data, PatIndex('%[0-9]%', Data), 8000) + 'X')-1
)
from @temp
参考 http://blogs.lessthandot.com/index.php/DataMgmt/DataDesign/extracting-numbers-with-sql-server