在Oracle中截取数字可以使用以下几种方法:

1、使用SUBSTR函数:
语法:SUBSTR(字符串, 起始位置, 长度)
示例:SELECT SUBSTR(‘123456’, 2, 3) FROM DUAL;
结果:’234′
2、使用TO_NUMBER函数和TRANSLATE函数结合:
语法:TO_NUMBER(TRANSLATE(字符串, ‘非数字字符’, ”))
示例:SELECT TO_NUMBER(TRANSLATE(‘123abc456’, ‘abcdefghijklmnopqrstuvwxyz’, ”)) FROM DUAL;
结果:123456
3、使用REGEXP_REPLACE函数和REGEXP_SUBSTR函数结合:
语法:REGEXP_SUBSTR(原始字符串, ‘[^09]+’)
示例:SELECT REGEXP_SUBSTR(‘123abc456’, ‘[^09]+’) FROM DUAL;
结果:’123′
下面是一个详细的表格,展示了每种方法的使用示例和结果:
| 方法 | 语法 | 示例 | 结果 |
| 1 | SUBSTR(字符串, 起始位置, 长度) | SELECT SUBSTR('123456', 2, 3) FROM DUAL; | ‘234’ |
| 2 | TO_NUMBER(TRANSLATE(字符串, ‘非数字字符’, ”)) | SELECT TO_NUMBER(TRANSLATE('123abc456', 'abcdefghijklmnopqrstuvwxyz', '')) FROM DUAL; | 123456 |
| 3 | REGEXP_SUBSTR(原始字符串, ‘[^09]+’) | SELECT REGEXP_SUBSTR('123abc456', '[^09]+') FROM DUAL; | ‘123’ |
Copyright © 2009-2022 www.wtcwzsj.com 青羊区广皓图文设计工作室(个体工商户) 版权所有 蜀ICP备19037934号