Oracle-检查数字中有无这符

摘要:
方法1的返回值为NULL,且返回值大于或等于1表示有非数字字符从dual中选择length b(ltrim('1248346','0123456789');或从dual中选择长度hb(rtrim('1248346a','0123456789'));方法2的返回值为NULL,表示字符串。方法2的返回值大于或等于1,表示非数字字符select tr

方法一 
返回值为NULL的表示字符串,返回值大于等于1的表示有非数字字符 
select   lengthb(ltrim( '1248346 ', '0123456789 '))   from   dual; 
或 
select   lengthb(rtrim( '1248346a ', '0123456789 '))   from   dual; 

方法二 
返回值为NULL的表示字符串,返回值大于等于1的表示有非数字字符 
select   translate( '123 ', '0123456789 ', ' ')   from   dual 

方法三 
如果返回为空指,则全部为数字,反之则含有非数字字符 
select   lengthb(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace( '0123456789a ', '0 '), '1 '), '2 '), '3 '), '4 '), '5 '), '6 '), '7 '), '8 '), '9 '))   ifnum   from   dual 

方法四 
如果是Oracle   10g,可以用正则表达式实现 
如果返回为0,则表示都是数字,反之,表示有非数字存在 
SELECT   count( 'a123 ')   FROM   dual   WHERE   REGEXP_LIKE( 'a123 ',   '[^[:digit:]] ') 

======================== 
不建议使用方法三

select  id  from   ac07_02 where  lengthb(rtrim( id, '0123456789 '))>1; 

免责声明:文章转载自《Oracle-检查数字中有无这符》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇使用局部标准差实现图像的局部对比度增强算法。(appium+python)UI自动化_09_unittest批量运行测试用例&生成测试报告下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

oracle创建表空间 扩展表空间文件 修改表空间自动增长

  1. 创建表空间 create tablespace SIRM2  datafile 'D:oracleproduct10.2.0oradataorclSIRM2.dbf' size 1024M --存储地址 初始大小1G autoextend on next 10M maxsize unlimited   --每次扩展10M,无限制扩展 EXTENT...

[mysql] mysql批量操作时性能优化

--------------------------------结论--------------------------------- MySql 非批量10万条记录,5700条/秒 MySql 批量(batch)10万条记录,62500条/秒 oracle 非批量插入10万条记录, 4464 条/秒 oracle 批量 (batch)插入10万条记录,...

Weblogic的安装、配置与应用部署

1. Weblogic安装 1.1 Linux下安装过程 安装环境: 操作系统: redhat-release-5Server-5.4.0.3 Weblogic版本: Weblogic 9.24 1)       部署前准备: 创建weblogic用户组. groupadd weblogic useradd –g weblogic weblogic pas...

Oracle用户,权限,角色以及登录管理 scoot 授权

Oracle用户,权限,角色以及登录管理 1. sys和system用户的区别 system用户只能用normal身份登陆em。除非你对它授予了sysdba的系统权限或者syspoer系统权限。sys用户具有“SYSDBA”或者“SYSOPER”权限,登陆em也只能用这两个身份,不能用normal。 -- 最重要的区别,存储的数据的重要性不同 sys所有...

数据库创建,用户管理,导入dmp文件

创建数据库文件 CREATE TABLESPACE toolset LOGGING DATAFILE '/home/oracle/app/oracle/oradata/orcl/toolset.dbf' SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE 500M EXTENT MANAGEMENT LOCAL; 创建数据库临...

Oracle查看正在执行的存储过程

正在执行的存储过程 select owner,name from v$db_object_cache where type like '%PROCE%' and locks >0 and pins >0; 正在执行的sql select a.program, b.spid, c.sql_text,c.SQL_IDfrom v$session a...