oracle 自定义函数

下面是一个前辈写的判断是否是手机号的函数

 

create or replace function IsMobile(pmsg varchar2)
return number
is
    vprefix     varchar2(20);
    vlen        number;
begin

    vlen := lengthb(pmsg);
    if(vlen < 11 or vlen > 12) then
       return 0;
    end if;

    vprefix := substrb(pmsg,1,1);
    if(vprefix != '0' and vprefix != '1') then
       return 0;
    end if;

    for i in 2 .. vlen loop
        vprefix := substrb(pmsg,i,1);
        if(vprefix < '0' or vprefix > '9') then
            return 0;
        end if;
    end loop;

    return 1;
end;

/

 

可复制到sqlplus直接执行,注意复制要带上后面的那个斜杠。执行后会提示函数已创建。然后我们就可以在sql中直接调用了,就像调用系统函数一样。

你可能感兴趣的:(oracle,sql,手机)