小编Emm*_* W.的帖子

删除sql SELECT中的所有非数字字符

当我在 sql 中调用查询时,我想删除所有非数字字符。我有函数,在函数中我这样做:

Declare @KeepValues as varchar(50)
Set @KeepValues = '%[^0-9]%'
While PatIndex(@KeepValues, @Temp) > 0
    Set @Temp = Stuff(@Temp, PatIndex(@KeepValues, @Temp), 1, '')
Run Code Online (Sandbox Code Playgroud)

但现在我想用查询(选择)来做。我试过了,但这不起作用

select substring(AdrTelefon1, PatIndex('%[^0-9]%', AdrTelefon1), 2000) from test
Run Code Online (Sandbox Code Playgroud)

编辑 我有! T-SQL 选择查询以删除非数字字符

它不能正常工作

SELECT LEFT(SUBSTRING(AdrTelefon1, PATINDEX('%[0-9]%', AdrTelefon1), 8000),
       PATINDEX('%[^0-9]%', SUBSTRING(AdrTelefon1, PATINDEX('%[0-9]%', AdrTelefon1), 8000) + 'X') -1) from test
Run Code Online (Sandbox Code Playgroud)

我有 04532/97 并且在此查询之后我有 04532 但我需要 0453297

sql t-sql

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

sql ×1

t-sql ×1