Oracle数据库函数应用学习

1:建立无参数的函数

  

    create or replace function func_datetime

       return varchar2

    is

    begin

          return to_char(sysdate,

                     'yyyy"年"MM"月"DD"日" HH24"时"mi"分"ss"秒"');

    end func_datetime;

 

 测试无参数的函数:

  begin

     dbms_output.put_line(func_datetime);  --通过输出语句来调用函数

  end;

 

2: 带输入值的函数

    create or replace function func_isHoliday(p_date date) return integer is

      v_weekday integer := -1;

    begin

        select t_char(p_date, 'd') into v_weekday from dual;

        if(v_weekday < 2 or v_weekday > 6) then

              return 1;

        else

              return 0;

        end if;

    end func_isHoliday;

 

   调用带输入值的函数: 

    declare

       vdate date := date '2010-12-12';

    begin

       dbms_output.put_line(func_holiday(vdate));

    end;

 

3:带有输出输入参数的函数

   create or replace funcition func_getinfo(empid number, position out varchar2) return varchar2 is

        name employees.name % type;

   begin

       select t.name, p.postname into name, position from employees t, post p

       where t.position=p.postid and t.id = empid;

    return name;

  end func_getinfo;

 

   调用带有输入和输出参数的函数:

   declare

    v_name employees.name % type;

    v_post post.postname % type;

   begin

        v_name := func_getinfo(2, v_post);

        dbms_output.put_line('姓名' || v_name || '职位' || v_post);

   end;

 

  运行结果:姓名张三职位工程师

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波哥的技术积累

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值