Oracle 查询意外地不返回任何行

Oracle 查询意外地不返回任何行,oracle,siebel,Oracle,Siebel,我试图从Siebel的S_CONTACT表返回手机号码列表,其中的值包含除号码以外的任何内容 我使用的查询是: select cell_ph_num from s_contact where regexp_replace(cell_ph_num, '0|1|2|3|4|5|6|7|8|9', '') <> '' 我得到了很多结果 这些结果是否与“不等于空字符串”子句不匹配?'在oracle中为NULL。。因此它必须是而不是NULL select cell_ph_num from

我试图从Siebel的
S_CONTACT
表返回手机号码列表,其中的值包含除号码以外的任何内容

我使用的查询是:

select cell_ph_num 
from s_contact
where regexp_replace(cell_ph_num, '0|1|2|3|4|5|6|7|8|9', '') <> ''
我得到了很多结果

这些结果是否与“不等于空字符串”子句不匹配?

'
在oracle中为
NULL
。。因此它必须是
而不是NULL

select cell_ph_num 
from s_contact
where regexp_replace(cell_ph_num, '0|1|2|3|4|5|6|7|8|9', '') IS NOT NULL
或者我们可以通过
POSIX
类以这种方式使用
REGEXP\u LIKE

 WHERE REGEXP_LIKE (cell_ph_num,'[^[:DIGIT:]]');
或Perl风格的POSIX

 WHERE REGEXP_LIKE (cell_ph_num,'\D');
在oracle中为
NULL
。。因此它必须是
而不是NULL

select cell_ph_num 
from s_contact
where regexp_replace(cell_ph_num, '0|1|2|3|4|5|6|7|8|9', '') IS NOT NULL
或者我们可以通过
POSIX
类以这种方式使用
REGEXP\u LIKE

 WHERE REGEXP_LIKE (cell_ph_num,'[^[:DIGIT:]]');
或Perl风格的POSIX

 WHERE REGEXP_LIKE (cell_ph_num,'\D');
在oracle中为
NULL
。。因此它必须是
而不是NULL

select cell_ph_num 
from s_contact
where regexp_replace(cell_ph_num, '0|1|2|3|4|5|6|7|8|9', '') IS NOT NULL
或者我们可以通过
POSIX
类以这种方式使用
REGEXP\u LIKE

 WHERE REGEXP_LIKE (cell_ph_num,'[^[:DIGIT:]]');
或Perl风格的POSIX

 WHERE REGEXP_LIKE (cell_ph_num,'\D');
在oracle中为
NULL
。。因此它必须是
而不是NULL

select cell_ph_num 
from s_contact
where regexp_replace(cell_ph_num, '0|1|2|3|4|5|6|7|8|9', '') IS NOT NULL
或者我们可以通过
POSIX
类以这种方式使用
REGEXP\u LIKE

 WHERE REGEXP_LIKE (cell_ph_num,'[^[:DIGIT:]]');
或Perl风格的POSIX

 WHERE REGEXP_LIKE (cell_ph_num,'\D');

非常感谢。我知道“”和NULL在Oracle中是“相同”的,但为什么“”不起作用呢?
NULL
s不能与任何关系运算符一起使用。仅允许为NULL或
不为NULL
。。否则您必须使用
NVL()
谢谢。我知道“”和NULL在Oracle中是“相同”的,但为什么“”不起作用呢?
NULL
s不能与任何关系运算符一起使用。仅允许为NULL或
不为NULL
。。否则您必须使用
NVL()
谢谢。我知道“”和NULL在Oracle中是“相同”的,但为什么“”不起作用呢?
NULL
s不能与任何关系运算符一起使用。仅允许为NULL或
不为NULL
。。否则您必须使用
NVL()
谢谢。我知道“”和NULL在Oracle中是“相同”的,但为什么“”不起作用呢?
NULL
s不能与任何关系运算符一起使用。仅允许为NULL或
不为NULL
。。否则,您必须使用
NVL()
where regexp_like(cell_ph_num,'\D')
where regexp_like(cell_ph_num,'\D')
where regexp_like(cell_ph_num,'\D')
where regexp like(cell_ph_num,'\D')