小编典典

我怎么知道oracle 9i中哪些值是数字的

sql

我有一个包含varchar的数据库。

我想知道哪些记录包含数值。我尝试了REGEXP_COUNT其他,但是我在9i上运行,我认为这是10g>

我怎样才能做到这一点?

我试过了:

 select to_number( my_column ) from my_table

但这是行不通的,因为并不是所有的数字都是数字。

编辑

背景。

该表包含员工ID,所有员工ID均为数字(读取1234或24523或6655)

在初始数据库加载中,当不知道员工ID时,而不是使用诸如-1他们输入的文本之类的东西时:

NA, N/A, NONE, UNK, UNKNOW, TEST, EXTERNAL, WITHOUT_ID

真正的主要错误是,该列varchar不是并且应该编号。

现在,我想做的是获取ll非数字(不包含雇员id)的记录,但是由于该数据库是9i,所以我无法使用RegExp


阅读 184

收藏
2021-05-30

共1个答案

小编典典

我设法这样解决:

select my_column
from my_table
where my_column not like '%1%'
and my_column not like '%2%'
and my_column not like '%3%'
and my_column not like '%4%'
and my_column not like '%5%'
and my_column not like '%6%'
and my_column not like '%7%'
and my_column not like '%8%'
and my_column not like '%9%'
and my_column not like '%0%'

脏,但是可以用。;)

2021-05-30