【发布时间】:2014-11-18 20:36:24
【问题描述】:
我有这个 varchar 字段;
Substrg
--------
38-40week
8month
7
40
38-40week
我只想获取数字,例如:
38-40
8
7
40
38-40
我试过了,但它不起作用......:
select SUBSTRING(Substrg, PATINDEX('%[0-9]%', Substrg), LEN(Substrg))
我该怎么办?谢谢
【问题讨论】:
-
PATINDEX()是一个 SQL Server 函数,但您的问题被标记为 MySQL。您真正使用的是什么数据库?另外,嵌入的-什么时候变成数字字符了? -
如果是 SQL Server,请参见 stackoverflow.com/questions/9636045/… 使用
select dbo.fnRemovePatternFromString(fld, '%[^-0-9]%') -
你可以扩展mysql使其支持正则表达式,查看this了解更多信息
标签: mysql sql substring varchar patindex