Sql 数据中的各种数字

Sql 数据中的各种数字,sql,Sql,如果有不同程度的测量数据也是相当模糊的,例如: 100mg 30ml 0.5mg 12 mg .03g 如何获取测量数据 我研究了PATINDEX(%[0-9]&)和数值 我觉得我的代码应该朝着以下方向发展: ... LIKE '%'+NUMERIC(5,2)+'%' 您应该创建一个函数,该函数描述: 并将其用于您的专栏: select dbo.udf_GetNumeric(column) from table 您最好将数字和单位分隔成单独的列,或者将数字

如果有不同程度的测量数据也是相当模糊的,例如:

100mg    
30ml    
0.5mg    
12 mg    
.03g
如何获取测量数据

我研究了
PATINDEX(%[0-9]&)和数值

我觉得我的代码应该朝着以下方向发展:

... LIKE '%'+NUMERIC(5,2)+'%'

您应该创建一个函数,该函数描述:

并将其用于您的专栏:

select dbo.udf_GetNumeric(column) 
from table

您最好将数字和单位分隔成单独的列,或者将数字存储在基本单位(例如,
g
L
)中,而不是将数字和单位保存在单个字符串列中。@DStanley此时此刻,我对单位不太在意,更确切地说是数值并保持其准确性这很好地工作,但它不能解释小数点。@BrandonWhite请将正则表达式的两个位置从
'%[^0-9]%'
更改为
'%[^0-9.,]%'
select dbo.udf_GetNumeric(column) 
from table