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.。。)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com