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;
相关推荐
卿雪16 小时前
Redis的数据类型 + 底层实现:String、Hash、List、Set、ZSet
数据结构·数据库·redis·python·mysql·缓存·golang
梦想的旅途216 小时前
企业微信二次开发中的零信任存储与传输加密实践
数据库
rchmin17 小时前
阿里Canal数据库增量日志解析工具介绍
数据库·mysql
TDengine (老段)17 小时前
TDengine 字符串函数 GROUP_CONCAT 用户手册
java·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
·云扬·17 小时前
MongoDB分片集群部署与高可用测试实战指南
数据库·mongodb
Jtti17 小时前
网站服务器首页正常但内页全部404是什么原因?
运维·服务器·数据库
掘根17 小时前
【消息队列项目】SQLite简单介绍
java·oracle·sqlite
数据库学啊17 小时前
性价比高的国产时序数据库哪家技术强
数据库·时序数据库
咖丨喱17 小时前
【修复miracast协商失败问题】
服务器·数据库·asp.net
蟹至之17 小时前
【MySQL】索引 (上) —— 索引的定义与数据结构
数据库·mysql·索引