sqlserver去掉字符串中的所有字母
可以使用SQL Server的PATINDEX函数结合SUBSTRING和REPLACE函数来实现去除所有字母的操作。具体语法为:
SELECT REPLACE(SUBSTRING(column_name, 1, PATINDEX('%[^0-9]%', column_name)-1), ' ', '')
FROM table_name;
其中,column_name表示要处理的列名,table_name为表名。‘%[^0-9]%‘是一个正则表达式,表示匹配所有非数字字符。PATINDEX函数返回匹配的第一个字符的位置,SUBSTRING函数用于截取指定长度的字符串,REPLACE函数用于将匹配到的字符替换为指定字符,这里是空字符’’。注意,如果要保留小数点,可以在正则表达式中加入’.'。
使用SQLServer的PATINDEX,SUBSTRING和REPLACE函数组合,可以移除字符串中的所有字母。通过PATINDEX找到第一个非数字字符的位置,然后SUBSTRING截取并REPLACE替换为无。这种方法适用于处理包含非数字字符的列。
751

被折叠的 条评论
为什么被折叠?



