oracle 自定义函数返回一个自定义整数列,如何在下一个自定义函数中,调用上一个函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 自定义函数返回一个自定义整数列,如何在下一个自定义函数中,调用上一个函数相关的知识,希望对你有一定的参考价值。
---自定义类型
create or replace type t_int is table of integer
-- Create table
create table TESTFUNCTION
(
oid INTEGER,
result INTEGER
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255;
-- Create table no.1
create or replace function FindAllChildGroup1 (mid int)
Return T_INT--dtable table(ID int)
As
dtable T_INT;
Begin
select T_INT(a.result) into dtable from testfunction a where a.oid!=mid ;
return (dtable);
END FindAllChildGroup1;
-- Create table no.2
create or replace function FindAllChildDoc (pid IN OUT int)
Return T_INT--- dtable table(ID int)
As
dtable T_INT;
dtable_ T_INT;
Begin
dtable_:= FindAllChildProject (pid);
select T_INT(a.o_itemno) into dtable from
(
select o_itemno from CDMS_Doc
where o_projectno in (select * from dtable_)
) a ;
return (dtable);
End FindAllChildDoc;
现在的问题在 ‘ where o_projectno in (select * from dtable_)’这句
错误:PL/SQL: ORA-00942: 表或视图不存在
行:11
文本:where o_projectno in (select * from dtable_)
错误:PL/SQL: SQL Statement ignored
行:8
文本:select T_INT(a.o_itemno) into dtable from
你好,我是初学者,我应该怎么拼字符串呢??
追答把这一句
<<EOF
select T_INT(a.o_itemno) into dtable from
(
select o_itemno from CDMS_Doc
where o_projectno in (select * from dtable_)
) a ;
EOF
写到一个varchar2变量v_sql里面记得拼字符串,然后execute immediate v_sql into dtable ;
EXCEL宏如何让自定义函数返回错误代码?
比如在excel单元格输入=2/0,得到的结果是#div/0!,我想写一个自定义函数
function ffchufa(a,b)
......
if b=0 then
ffchufa=2/0
end if
end function
这时ffchufa(5,0)返回的结果是#value!,而不是#div/0!
我想让b=0时,返回结果是#div/0,该如何操作呢?
我给出的if b=0 then只是举个例子,判断除数如果为0,想此时返回#div/0!。
我不知道在if和End if之间怎样写,才能返回#div/0!
以上是关于oracle 自定义函数返回一个自定义整数列,如何在下一个自定义函数中,调用上一个函数的主要内容,如果未能解决你的问题,请参考以下文章
自定义一个函数sumfib(n),返回斐波那契数列前n项之和 python?