oracle函数作为表用

在开发中遇到一个东西,分享一下:

在oralce中,原先用like 作为标记区分一些关联关系,但是,注意这个但是!终有一日,会有改变。
现在是有逻辑关系的。传入一个机构号码,需要根据逻辑判断的。

  • SO!!!

    也是弯路不断。

    开始显示java改,改完后发现配置还是超多呢,总不能写多个sql吧?后来考虑要是case when,写起来也是要死人的。

    finally:

          考虑函数或者存储过程,但是存储过程返回的貌似得用游标才能打开,根本不是我想要的结果集啊!
          
          
    

    h1 markdown 用的少,试试

create type row_type as object(a varchar2(10));

create type table_type as table of row_type;

create or replace function getDXQ(
a in varchar2
)
return table_type pipelined

    is
        v row_type;--定义v为行对象类型
    begin
      for thisrow in (select comcode  a from ldcom where comcode like a||'%'  ) loop
        v := row_type(thisrow.a );
        pipe row (v);
      end loop;
      return;
    end;

    select * from table(getDXQ('86'));
    

h1 nice!!!

文章目录
,