小编SQL*_*oob的帖子

T-SQL选择查询以删除非数字字符

我在具有可变alpha长度的列中有脏数据.我只想删除任何不是0-9的东西.

我不想运行函数或proc.我有一个类似于在文本之后抓取数值的脚本,它看起来像这样:

Update TableName
set ColumntoUpdate=cast(replace(Columnofdirtydata,'Alpha #','') as int)
where Columnofdirtydata like 'Alpha #%'
And ColumntoUpdate is Null
Run Code Online (Sandbox Code Playgroud)

我认为它会工作得很好,直到我发现我认为只有Alpha#12345789格式的某些数据字段不...

需要剥离的数据示例

AB ABCDE # 123
ABCDE# 123
AB: ABC# 123
Run Code Online (Sandbox Code Playgroud)

我只想要123.确实所有数据字段都具有#之前的数字.

我尝试了substring和PatIndex,但我的语法不正确或者其他东西.任何人对解决这个问题的最佳方法有任何建议吗?

谢谢!

t-sql substring sql-server-2008-r2 patindex

54
推荐指数
8
解决办法
19万
查看次数

标签 统计

patindex ×1

sql-server-2008-r2 ×1

substring ×1

t-sql ×1