Oracle 中常用的 function

1.将oracle Date 转为 utc
CREATE OR REPLACE
function to_unixtime(oracleDate date) return number is
begin
return (oracleDate - to_date(19700101,'yyyymmdd') )*24*60*60 ;
end;
2. 将 utc 时间转为 oracle 时间
CREATE OR REPLACE
function from_unixtime(sttTime number) return date is
begin
return to_date(19700101,'yyyymmdd') + (sttTime+8*3600)/24/60/60;
end;
3.将网络序IP地址转为点分式IP
CREATE OR REPLACE
function long2ip(ip number) return varchar2 is
  Result varchar2(40);
      ip0 number;
      ip1 number;
      ip2 number;
      ip3 number;

      flag0 number;
      flag1 number ;
      flag2 number;
begin     
     flag0 := 256 * 256 * 256;
      flag1 := 256 *256;
      flag2 := 256;

     ip3 := mod(ip, flag2);
     ip0 := (ip - mod(ip, flag0))/flag0;
     ip1 := (ip - ip0 * flag0 - mod(ip, flag1))/flag1;
     ip2 := (ip - ip0 * flag0 - ip1 * flag1 - mod(ip, flag2))/flag2;

      Result := to_char(ip3) || '.' || to_char(ip2) || '.' || to_char(ip1) || '.' || to_char(ip0);
  return(Result);

end long2ip;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值