coalesce(操作数1,操作数2[,...,操作数N])
1、返回coalesce操作数列表中第一个非null,如果多为null,则返回null
2、在coalesce表达式中必须至少有一个操作数不为null
3、nvl、nvl2先执行所有操作数再判断,coalesce先判断,只有在有必要时才执行操作数
SQL> declare
2 a varchar2(20):='a';
3 b varchar2(20):='b';
4 c varchar2(20):='c';
5 d varchar2(20);
6 function getN return varchar2
7 is
8 begin
9 dbms_output.put_line('Func:GetN');
10 Return 'GetN';
11 end;
12 begin
13 d:=coalesce(null,null);
14 dbms_output.put_line(d);
15 end;
16 /
declare
a varchar2(20):='a';
b varchar2(20):='b';
c varchar2(20):='c';
d varchar2(20);
function getN return varchar2
is
begi
1、返回coalesce操作数列表中第一个非null,如果多为null,则返回null
2、在coalesce表达式中必须至少有一个操作数不为null
3、nvl、nvl2先执行所有操作数再判断,coalesce先判断,只有在有必要时才执行操作数
SQL> declare
2 a varchar2(20):='a';
3 b varchar2(20):='b';
4 c varchar2(20):='c';
5 d varchar2(20);
6 function getN return varchar2
7 is
8 begin
9 dbms_output.put_line('Func:GetN');
10 Return 'GetN';
11 end;
12 begin
13 d:=coalesce(null,null);
14 dbms_output.put_line(d);
15 end;
16 /
declare
a varchar2(20):='a';
b varchar2(20):='b';
c varchar2(20):='c';
d varchar2(20);
function getN return varchar2
is
begi