寫了個(gè)了簡(jiǎn)單的小例子,由于你沒(méi)有說(shuō)明當(dāng)入?yún)⒉粸?時(shí),返回什么值,所以默認(rèn)返回入?yún)⒘?。代碼如下:
創(chuàng)新互聯(lián)長(zhǎng)期為上1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為平遠(yuǎn)企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、成都做網(wǎng)站,平遠(yuǎn)網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
CREATE OR REPLACE FUNCTION Fun_Test(p IN NUMBER) RETURN VARCHAR2 IS
v_Result VARCHAR2(20); --定義返回值變量
BEGIN
IF p = 0 THEN
v_Result := NULL; --賦空值
ELSE
v_Result := To_Char(p); --返回p的值
END IF;
RETURN v_Result; --返回結(jié)果
END;
有問(wèn)題發(fā)追問(wèn)。
希望能解決您的問(wèn)題。
create?or?replace?function?test(p1?in?number,?p2?in?varchar2)
return?varchar2?is
v_out?varchar2(200);
begin
select?flag_name
into?v_out
from?PU_META_PLAT.MD_META_DIM_CODE
where?dim_table_id?=?p1
and?flag_code?in
(SELECT?trim(substr(','?||?p2?||?',',
instr(','?||?p2?||?',',?',',?1,?LEVEL)?+?1,
instr(','?||?p2?||?',',?',',?1,?LEVEL?+?1)?-
instr(','?||?p2?||?',',?',',?1,?LEVEL)?-?1))
FROM?dual
CONNECT?BY?LEVEL?=
(length(','?||?p2?||?',')?-
length(replace(','?||?p2?||?',',?',',?'')))?/?1?-?1));
return?v_out;
exception
when?others?then
return?null;
end;
create or replace function my_fun return number is
i number := 1;
total number := 1;
begin
while i=20 loop
total := total*i;
i := i+1;
end loop;
return total;
end my_fun;
create or replace
FUNCTION "函數(shù)名"
(
A in number,
B in number,
name in VARCHAR2
)
BEGIN
insert into 表名 values(A+B,name);
END 函數(shù)名;
//花括號(hào)里邊就是需要傳的參數(shù),name如果是固定的可以直接寫死,就不用傳參了