首页 > 技术文章 > Oracle基础之function使用

cancer-sun 2016-01-29 13:55 原文

--编写一个查询scott下某张表的记录数

--定义function名fn_gettabcount,以fn_开头
create or replace function fn_gettabcount
( tabname
in varchar2 --定义传入的变量 )

return number --定义返回类型 is cnt number; --定义返回变量 v_tabname varchar2(50); --定义接收tabname的变量 sqlstr varchar2(200); --定义封装sql变量 begin v_tabname:=tabname; --将接收的变量赋值 sqlstr:='SELECT COUNT(*) FROM '||v_tabname; --封装sql语句 execute immediate sqlstr into cnt; --执行封装sql语句,将结果赋值给返回变量 return cnt; --返回 end ;

使用方法:

select to_number(fn_gettabcount('DEPT') ) "count(*)" from dual;

推荐阅读