Sql 查找字符串中的最后一个非数字字符

Sql find the last non-numeric character in a string

如何查找字符串中的最后一个非数字字符,例如“10jnklgm51”。为了在示例中找到 'm' 最简单的方法是什么?

最后一个非数字字符是反向字符串中的第一个非数字字符。所以,像这样:

select substring(reverse(str),
                 patindex('%[^0-9]%', reverse(str)),
                 1)