如何查找数字并从oracle sql中的varchar字符串中删除它

时间:2017-08-18 16:41:58

标签: sql plsql

我有以下字符串

val =" Testabc123xyz32dfghj"

我需要在输出下面只显示没有数字的字符:

输出:TESTABCXYZDFGHJ

使用哪些sql字符串函数?

4 个答案:

答案 0 :(得分:1)

从技术上讲,你想要这个:

select upper(regexp_replace('Testabc123xyz32dfghj', '\d')) from dual;

答案 1 :(得分:0)

declare @val varchar(max) = 'Testabc123xyz32dfghj'
declare @num1 as int 
set @num1=0

while @num1<10
begin
  set @val=REPLACE(@val,cast(@num1 as varchar),'')
  set @num1=@num1+1
end
print UPPER(@val)

答案 2 :(得分:0)

使用此功能: -

regexp_replace('Testabc123xyz32dfghj', '[0-9]', '')

答案 3 :(得分:0)

select upper(regexp_replace('Testabc123xyz32dfghj', '\d')) from dual;