oracle的function的语法,Oracle function语法

2018-3-30 遇到需要使用SQL方法拼接字符串的情况,就研究了一下SQL简单的方法应用

--定义入参数[参数名 in 参数类型]

create or replace function p_gettype(se_type in varchar2)

--定义返回类型

return varchar2

is

v_calling_type varchar2(45);

v_called_type varchar2(45);

v_tr_in varchar2(45);

v_tr_out varchar2(45);

v_sett_name varchar2(90);

begin

--查出v_calling_type

select call_type_name into v_calling_type from uparam.settle_a_def

where call_type = substr(se_type,1,2);

--查出v_called_type

select call_type_name into v_called_type from uparam.settle_a_def

where call_type = substr(se_type,3,2);

--查出v_tr_in

select tr_type_name into v_tr_in from uparam.tr_b_def

where tr_type = substr(se_type,5,2);

--查出v_tr_out

select tr_type_name into v_tr_out from uparam.tr_b_def

where tr_type = substr(se_type,7,2);

--返回字符串 calling_type(tr_in)->called_type||(tr_out);

v_sett_name := v_calling_type ||'('|| v_tr_in||')->'||v_called_type||'('|| v_tr_out||')';

return v_sett_name;

exception

when others then

return null;

end p_gettype;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值