oracle判断字符串是否为数字
2 回答

阿波罗的战车
TA贡献1862条经验 获得超6个赞
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | 可以使用正则表达式的方式来判断。 REGEXP_LIKE( 字段 , '(^[+-]?\d{0,}\.?\d{0,}$)' 来判断 是否是数字 SQL> SELECT NULL 2 FROM dual 3 WHERE REGEXP_LIKE( NULL , '(^[+-]?\d{0,}\.?\d{0,}$)' ); 未选定行 SQL> SQL> SELECT 'Abc' 2 FROM dual 3 WHERE REGEXP_LIKE( 'Abc' , '(^[+-]?\d{0,}\.?\d{0,}$)' ); 未选定行 SQL> SQL> SELECT '100' 2 FROM dual 3 WHERE REGEXP_LIKE( '100' , '(^[+-]?\d{0,}\.?\d{0,}$)' ); '10 --- 100 SQL> SQL> SELECT ' -100 ' 2 FROM dual 3 WHERE REGEXP_LIKE(' -100 ',' (^[+-]?\d{0,}\.?\d{0,}$) '); ' -10 ---- -100 SQL> SQL> SELECT '.01' 2 FROM dual 3 WHERE REGEXP_LIKE( '.01' , '(^[+-]?\d{0,}\.?\d{0,}$)' ); '.0 --- .01 SQL> SQL> SELECT ' 1995-10-1 ' 2 FROM dual 3 WHERE REGEXP_LIKE(' 1995-10-1 ',' (^[+-]?\d{0,}\.?\d{0,}$) '); 未选定行 SQL> SQL> SELECT ' 1/20/95 ' 2 FROM dual 3 WHERE REGEXP_LIKE(' 1/20/95 ',' (^[+-]?\d{0,}\.?\d{0,}$)'); 未选定行 |
- 2 回答
- 0 关注
- 1222 浏览
添加回答
举报
0/150
提交
取消