今天在一张3W多记录的表里查非数字的异常数据~数据库太水,记录一发,因为2.5使用人员误输入为2..5.... select t.routecardlist_id,trim(translate(RTRIM(LTRIM(t.rated_hours)), '#0123456789', '#')) from MANU_ROUTECARDLIST t Where trim(translate(RTRIM(LTRIM(t.rated_hours)), '#0123456789', '#')) is not
oracle中的clob类型字段不能直接显示出来,需要借助Oracle系统dbms_lob中substr方法处理,如select dbms_lob.substr(clobField) from table 如果内容输出不全,进行如下设置 set heading off 不输出结果第一行的标题 (字段名称) set long 40000 设置输出的字节数(比较大数)
update (select length(t.name), t.* -- name,length(name) from g_enterprise_info t where nvl2(translate(name, '\1234567890 ', '\'), 'is characters ', 'is number ') = 'is number ' and asciistr(gszcdjh) like '%\%') set name = gszcdjh, gszcdjh =name ; 判断一