Oracle SQL - 在字段中查找特殊的非数字字符

Oli*_*ver 6 sql string oracle select

如何在where子句中识别除数字之外的数据?

Oll*_*lie 14

SELECT *
  FROM <table>
 WHERE REGEXP_LIKE(<column>, '[^[:digit:]]');
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你...


Bob*_*ica 5

您还可以使用TRANSLATE函数执行此操作,如下所示:

SELECT *
  FROM A_TABLE a
  WHERE LENGTH(TRANSLATE(a.FIELD, 'x0123456789', 'x')) IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

LENGTH(TRANSLATE(a.FIELD, 'x0123456789', 'x'))如果该字段仅包含数字字符,则表达式将返回NULL.如果存在非数字字符,则将返回非数字字符的数量.

分享和享受.