亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        oracle字符拆分函數(shù)返回結(jié)果集

        字號:


            oracle不能像mssql那樣支持直接返回表類型,所以要先創(chuàng)建一種自定義類型。這裏用到的是嵌套表(nested table)。
            -- nested table
            create or replace type split_str is table of varchar(100);
            /
            -- function
            create or replace function fn_split
            (
            p_str varchar2,
            p_delimiter varchar2
            )
            return split_str pipelined
            as
            v_str varchar(4000) := p_str;
            v_index number;
            v_sublength number;
            begin
            -- p_delimiter is null
            if p_delimiter is null then
            for x in 1..length(v_str)
            loop
            pipe row(substr(v_str,x,1));
            end loop;
            return;
            end if;
            v_index := instr(v_str,p_delimiter);
            while v_index <> 0
            loop
            pipe row(substr(v_str,1,v_index-1));
            v_sublength := length(v_str) - (v_index + length(p_delimiter) - 1);
            v_str := substr(v_str,-v_sublength,v_sublength);
            v_index := instr(v_str,p_delimiter);
            end loop;
            pipe row(v_str);
            return;
            end;
            /
            -- 調(diào)用(第二種方式更好)
            select fn_split('this@@is@@it','@@') from dual;
            select * from table(fn_split('this@@is@@it','@@'));