oracle if else

oracle中的if else

 if instr(pagesql,'group by') >= 1 then
      v_sql := 'select * from ('||pagesql||') where rn between '||v_pb||' and '||v_pd;
     else if instr(pagesql,'where') >= 1 
      then  v_innner_sql := pagesql||' and rownum <= '||v_pd; v_sql:='select * from ('||v_innner_sql||') where rn >='||v_pb;
     else
       v_innner_sql := pagesql || ' where rownum <= '|| v_pd; v_sql:='select * from ('||v_innner_sql||') where rn >='||v_pb;
     end if;
     end if;

 网上搜可以用elseif,可是根本不成啊,不知道怎么回事

 最后用上边的方法搞定了

后来才知道是elsif,所以上边可以直接用

 if instr(pagesql,'group by') >= 1 then
       v_sql := 'select * from ('||pagesql||') where rn between '||v_pb||' and '||v_pd;
 elsif instr(pagesql,'where') >= 1 then
       v_innner_sql := pagesql||' and rownum <= '||v_pd; v_sql:='select * from ('||v_innner_sql||') where rn >='||v_pb;
 else
       v_innner_sql := pagesql || ' where rownum <= '|| v_pd; v_sql:='select * from ('||v_innner_sql||') where rn >='||v_pb;
 end if;

猜你喜欢

转载自blackproof.iteye.com/blog/1688608