3,491
社区成员
发帖
与我相关
我的任务
分享
--把函数改成这样测试下看看什么结果
create or replace function F_GETRECEIPTBOOKINGID( receiptindexid in varchar2 )
return varchar2
is
str_list varchar2(4000) default null;
str varchar2(20) default null;
begin
for x in ( SELECT ER.Bookingno
FROM FES.T_FEE_EXESRECEIPT ER
WHERE ER.RECEIPTID = receiptindexid ) loop
if not x.bookingno is null then
if INSTR(str_list, x.bookingno, 1, 1)='0' or INSTR(str_list, x.bookingno, 1, 1) is null then
str_list := str_list || str || to_char(x.bookingno);
str := ', ';
end if;
else str_list:='test'; --如果x.bookingno为null则返回 test
end if;
end loop;
return str_list;
end;
SQL> set serveroutput on
SQL>
SQL> declare
2 begin
3 if not 1 is null then
4 dbms_output.put_line('123');
5 end if;
6 end;
7
8 /
123
PL/SQL procedure successfully completed
SQL>