oracle function传参
发布网友
发布时间:2022-04-23 00:32
我来回答
共2个回答
热心网友
时间:2022-04-08 11:09
抱歉,没搞懂你的问题, 可否解释清楚?
从你给出的这么多来看你的问题,如果不对请指正:
tkbn是否是自定义的类型--typevarchar2 , 请查一下
如果是, 可否指出他是%type 还是%rowtype?
如果不是,可否写清楚, 是否少了空格
你用了open for , 那么这个Ref Cursor是什么? 可否把游标写出来看一下
“套了一层运行运行太慢了” 你的问题是要解决速度问题,还是什么其他问题。
追问
字放不下那么多。。
追答不好意思, 周末陪老婆 没时间看题
select tenp, tenpnm ,selhkbn ,tkbn
from ( 01 部分SQL, d01t表) union (02 部分,d02t) union (03部分, d03t)...(第i部分, d(i变量)表)
where tkbn (i) ....
是这个么?
如果我的理解差不多正确,那么 你说的“每个段定义一个字符串”, 这个“段” 从数据上是否是我说的01部分, 02部分等等?反映在表中是否是dt01表, dt02表 ....dtN表
--------------------------------------------------------------------------------------------------------------------------
因为你用的是union, 可否结果也列成数组?
比如 你要找的tenp, tenpnm等传给一个变量 比如叫v_tenp, v_tenpnm,类型定义为:
v_tenp dt01.tenp%type;
再定义个数据集类型的变量:
Type v_tenp_tab is table of v_tenp (或者dt01.tenp%type);
热心网友
时间:2022-04-08 12:27
function名(参数1,参数2.。。)