Oracle split

复制代码
CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000)

CREATE OR REPLACE FUNCTION splitstr(p_string    IN VARCHAR2,
                                    p_delimiter IN VARCHAR2)
  RETURN str_split
  PIPELINED AS
  v_length NUMBER := LENGTH(p_string);
  v_start  NUMBER := 1;
  v_index  NUMBER;
BEGIN
  WHILE (v_start <= v_length) LOOP
    v_index := INSTR(p_string, p_delimiter, v_start);
  
    IF v_index = 0 THEN
      PIPE ROW(SUBSTR(p_string, v_start));
      v_start := v_length + 1;
    ELSE
      PIPE ROW(SUBSTR(p_string, v_start, v_index - v_start));
      v_start := v_index + 1;
    END IF;
  END LOOP;

  RETURN;
END splitstr;
相关推荐
why1511 小时前
微服务商城-商品微服务
数据库·后端·golang
柒间1 小时前
Elasticsearch 常用操作命令整合 (cURL 版本)
大数据·数据库·elasticsearch
远方16093 小时前
18-Oracle 23ai JSON二元性颠覆传统
数据库·oracle·json
jllllyuz5 小时前
如何为服务器生成TLS证书
运维·服务器·数据库
伍六星5 小时前
Flask和Django,你怎么选?
数据库·django·flask
杜哥无敌5 小时前
ORACLE 修改端口号之后无法启动?
数据库·oracle
远方16095 小时前
0x-4-Oracle 23 ai-sqlcl 25.1.1 独立安装-配置和优化
数据库·ci/cd·oracle
远方16096 小时前
0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化
数据库·ide·ai·oracle
喵叔哟7 小时前
第1章:Neo4j简介与图数据库基础
数据库·oracle·neo4j