create or replace function CalculategWorkIntensity( v_vehicleno in varchar2,v_gouzhong in number,
p_date_begin in date,
p_date_end in date)return number is
v_q1 number;
v_q2 number;
v_q3 number;
v_q4 number;
v_q5 number;
v_q6 number;
v_q7 number; begin end CalculategWorkIntensity;
我要在存储过程中调用该函数,并且给几个变量赋值,怎么不能用如下语句 select CalculategWorkIntensity() into q1,q2,q3,q4,q5,q6,q7 他怎么提示说参数过多呀?
应该怎么做呀?
p_date_begin in date,
p_date_end in date)return number is
v_q1 number;
v_q2 number;
v_q3 number;
v_q4 number;
v_q5 number;
v_q6 number;
v_q7 number; begin end CalculategWorkIntensity;
我要在存储过程中调用该函数,并且给几个变量赋值,怎么不能用如下语句 select CalculategWorkIntensity() into q1,q2,q3,q4,q5,q6,q7 他怎么提示说参数过多呀?
应该怎么做呀?
--你的函数一共是4个参数,而返回是一个数值型的值,按如下这种调用
declare
v_n number;
begin
v_n := CalculategWorkIntensity(参数1,参数2,参数3,参数4);
--或 select CalculategWorkIntensity(参数1,参数2,参数3,参数4) into v_n from dual;
dbms_output.put_line(v_n);
end;
/
p_date_begin in date,
p_date_end in date,
p_q1 out number,
p_q2 out number,
p_q3 out number,
p_q4 out number
)
p_date_begin in date,
p_date_end in date,
v_q2 out number,
v_q3 out number,
v_q4 out number,
v_q5 out number,
v_q6 out number,
v_q7 out number
)
begin end CalculategWorkIntensity;调用就用三楼的就行了。