我有一个名为X的字段(在Oracle中为列),其值类似于“ a1b2c3”,“ abc”,“ 1ab”,“ 123”,“ 156”
如何编写一个SQL查询,仅返回包含纯数值=不包含字母的X?上例中的123''和156’‘。
123''和
从myTable中选择X,其中… ??
您可以将REGEXP_LIKE函数用作:
REGEXP_LIKE
SELECT X FROM myTable WHERE REGEXP_LIKE(X, '^[[:digit:]]+$');
样品运行:
SQL> SELECT X FROM SO; X -------------------- 12c 123 abc a12 SQL> SELECT X FROM SO WHERE REGEXP_LIKE(X, '^[[:digit:]]+$'); X -------------------- 123 SQL>