日期:2014-05-16  浏览次数:20521 次

实现二维表
create or replace function getGoodsMsgForProtocol( str_in in varchar2,str_classId in varchar2)--分类字
   return varchar2
is
       str_list   varchar2(4000) default 'null';--连接后字符串
       str_int    number(2) default 0;
begin
       for x in ( select goods.goodsname,goods.specs from t_Goods goods
           where goods.id=str_in) loop
           str_list :=x.goodsname||'='||x.specs||'    ';
           str_int:=+1;
       end loop;
       if str_list='null' and str_int=0 then
       for x in ( select goodshistory.goodsname,goodshistory.specs from t_Goodshistory goodshistory
           where goodshistory.goodsid=str_in) loop
           str_list :=x.goodsname||'='||x.specs||'    ';
           str_int:=+1;
       end loop;
       end if;
       if str_list='null' and str_int=0 then
       for x in ( select ac.acname,ac.specs from t_accessory ac
           where ac.id=str_in) loop
           str_list :=x.acname||'='||x.specs||'    ';
           str_int:=+1;
       end loop;
       end if;
       if str_list='null' and str_int=0 then
       for x in ( select ach.acname,ach.specs from t_accessoryhistory ach
           where ach.id=str_in) loop
           str_list :=x.acname||'='||x.specs||'    ';
           str_int:=+1;
       end loop;
       end if;
       if str_list='null' and str_int=0 then
           for x in ( select gs.goodsclassname from t_goodsclass gs
             where gs.id=str_classId) loop
             str_list :=x.goodsclassname||'='||'    ';
             str_int:=+1;
             end loop;
       end if;
       return str_list;
end;