Oracle字符串分割Split

Oracle中实现Split函数功能 本文档详细介绍了如何在Oracle数据库中实现像C#等其它编程语言中Split函数来拆分字符的功能。例子简单易懂,并附有详细的实现过程。 立即下载

一、创建数组类型

Sql代码

CREATE OR REPLACE TYPE T_RET_TABLE IS TABLE OF NVARCHAR2(1000);

二、创建字符串分割函数

Sql代码

CREATE OR REPLACE FUNCTION F_SPLIT_STRING(AS_STR NVARCHAR2,AS_SPLIT NVARCHAR2)  
  RETURN T_RET_TABLE IS

  -- Author  : Jack.Dr

  -- Created : 2015/12/22 15:53:26  

  -- Purpose : 字符串分割  


  -- Params  

  -- AS_STR : 要处理的字符串  

  -- AS_SPLIT :字符串分割符  


  V_OUT     T_RET_TABLE;  

  V_TMP     NVARCHAR2(4000);  

  V_ELEMENT NVARCHAR2(4000);  

BEGIN  

  V_TMP := AS_STR;  

  V_OUT := T_RET_TABLE();  

  --如果存在匹配的分割符  

  WHILE INSTR(V_TMP, AS_SPLIT) > 0 LOOP  

    V_ELEMENT := SUBSTR(V_TMP, 1, INSTR(V_TMP, AS_SPLIT) - 1);  

    V_TMP     := SUBSTR(V_TMP,  

                        INSTR(V_TMP, AS_SPLIT) + LENGTH(AS_SPLIT),  

                        LENGTH(V_TMP));  

    V_OUT.EXTEND(1);  

    V_OUT(V_OUT.COUNT) := V_ELEMENT;  

  END LOOP;  

  IF V_TMP IS NOT NULL THEN  

    V_OUT.EXTEND(1);  

    V_OUT(V_OUT.COUNT) := V_TMP;  

  END IF;  

  RETURN V_OUT;  

END F_SPLIT_STRING;

OK,到此功能已经实现。

三、调用

Sql调用

SELECT * FROM TABLE(F_SPLIT_STRING('1,2,3,4,5,6',','));


代码块调用

DECLARE  

  V_ARRAY T_RET_TABLE;  

BEGIN  

  V_ARRAY := F_SPLIT_STRING('1,2,3,4,5,6',',');  

  FOR I IN 1..V_ARRAY.COUNT LOOP  

     DBMS_OUTPUT.PUT_LINE(V_ARRAY(i));  

  END LOOP;  

END;
oracle_split_函数_返回数组 最近在oracle 中用到拆分字符串返回数组,一直头痛,因为在 oracle 中没有类似java中有split 函数 ,所以要自己写。好不容搜到一个。那网上是到处都是这个代码。怎么找都是这个方法,我就用了。这个方法如下: (方法一)用到后面出现 了bug 。哎弄了一下午就给别人测试了一下bug。(方法一)根本就行不通。于是我就自己改写了。(方法二)大家如有需要的请参考方法二: 立即下载

相关推荐

NXP S32K1 SPI驱动实战:从配置到DMA传输的完整流程解析

本文深入解析了NXP S32K1系列MCU的SPI驱动开发全流程。基于S32 Design Studio环境,详细阐述了从引脚配置、LPSPI模块初始化,到实现阻塞、中断及DMA三种传输模式的实战代码与配置要点。文章重点剖析了DMA传输的配置细节与性能优化,旨在帮助开发者构建高效、稳定的嵌入式SPI通信,并提供了SPI Flash驱动的综合案例。

blue42的博客 713

Oracle中分割字符串的方法

Oracle中分割字符串的方法 1. 使用 regexp_substr() 函数 1.1 方式1 1.2 方式2 2. 自定义函数 2.1 自定义类型 table 2.2 自定义函数 2.2.1 自定义函数 2.2.2 效果如下: 2.3 Oracle查看<Collection> 类型数据

@素素~的博客 2万+

LoRa正点原子模块组网步骤

按照我上一篇的博客和视频演示,相信大家一定都可实现了lora模块点对点的通信了。那我们来进行一个比较有高难度的设计吧! 使用多个loRa模块去完成一个组网设计: 在这之前一定要配置模块信息为定点传输 AT+TMODDE要等于1奥 第一步分析通讯协议: 点对点通讯是在透明传输的条件下,地址和信道都是一样的,直接发送接受数据。 组网呢我们利用是: 定向传输就是 A、B的地址、信道不同 假如A是要想B发送信息就用函数来下面: int b[5]...

weixin_43205178的博客 4082

Oracle/PLSQL:FUNCTION oracle_String_Split 拆分字符串函数

Oracle/PLSQL:FUNCTION oracle_String_Split 拆分字符串函数

yuanlnet的博客 1122

电子元器件基础:电阻、电容、电感的特性与应用解析

本文深入解析了电子元器件中电阻、电容和电感三大基础元件的核心特性、工作原理与选型应用。电阻作为电路中的‘交通警察’,控制电流与分配电压,其额定功率与精度是关键选型参数。文章结合实战经验,详细阐述了它们在电源滤波、信号处理及高频电路中的不同表现与避坑指南,是电子设计与维修的必备基础知识。

weixin_29213655的博客 375

Unity Animancer插件(一)基本使用

Animancer是什么?资源商店主页我们来通过Animancer实现一个最基本的动画播放效果。首先创建一个脚本,编写如下代码 很容易理解,就是在时播放一个指定的动画片段。接下来为角色添加、和刚刚编写的,并为字段赋值 接下来运行游戏就可以看到效果了 此时角色身上的组件可以看到当前动画的各项参数 下面我们来实现通过按键控制角色在于之间转换。新创建一个脚本。在代码中监听Y轴上的输入。然后根据监听到的数值判断角色状态,并播放相应的动画 给对应字段赋值后,启动游戏看下效果 下面来实现一个开枪效果。在默认状态下,角色

夜槿笙歌的博客 1万+

Oracle实现split分割字符串

【代码】Oracle实现split分割字符串。

m0_48972623的博客 1419

2023年高教社杯 | 2023年高教社杯全国大学生数学建模思路(A题思路、C题思路)

2023年高教社杯 | 2023年高教社杯全国大学生数学建模思路(A题思路、C题思路)

前程算法屋的博客 624

Oracle split()分割字符串函数

Oracle split()分割字符串函数

weixin_47217441的博客 5982

【Unity 实用工具篇】✨| 使用Fungus插件制作一个对话系统,简单好学易上手

今天带来的是Unity中一款简单易用的对话插件Fungus,它是一个免费的交互式的对话系统。 Fungus是Unity免费的一款开源的插件,它可以无代码的实现玩家与NPC之间的对话,并且支持本地化,对相机、Sprite及音乐音效的控制。 学会使用该插件就可以做一些对话剧情类的游戏了,还是非常好用的,下面就来学习一下Fungus具体怎么使用吧!

努力前行,总会成为自己心中的那道光 1万+

TSN新技术,让您的设备网络“更实时、更确定、更安全”

近日,工业和信息化部发布了2022年第23号公告,批准发布行业标准YD/T 4134-2022《工业互联网时间敏感网络需求及场景》。该标准是国内首个时间敏感网络(TSN)技术标准,标志着我国TSN技术标准体系建设迈出了坚实的一步,对构建工业互联网网络标准体系具有重要意义。TSN源于Time-Sensitive Networking的缩写,中文译名为时间敏感网络,因其具备的确定性和微秒级交互特性,受到了对实时性要求较高的工业控制领域的关注。TSN与工业数智化。

创龙,嵌入式一体化解决方案商 771

oracle数据库字符串切割split

1 新建数据库类型 create or replace type STR_SPLIT as table of varchar2(50); 2 创建function CREATE OR REPLACE FUNCTION SPLITSTR(P_STRING IN VARCHAR2, P_DELIMITER IN VARCHAR2) RETURN STR_SPLIT PIPELINED IS V_LENGTH NUMBER := LENGTH(P_STRING); V_START NUMB

小包同学_ 1703

适航规章、标准,书籍资料下载汇总(更新中)

以下是一些收集到的适航相关的资料,分享给大家。(如果没有你想要的资料,请留言,等找到会及时更新!

qq_41854911的博客 2547

oracle split 分割字符串,Oracle字符串分割Split

Oracle字符串分割Split一、创建数组类型Sql代码CREATE OR REPLACE TYPE T_RET_TABLE IS TABLE OF VARCHAR2(512)二、创建字符串分割函数Sql代码CREATE OR REPLACE FUNCTION F_SPLIT_STRING(AS_STR VARCHAR2,AS_SPLIT VARCHAR2)RETURN T_RET_TABL...

weixin_35934226的博客 4539

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

oracle分割字符串函数_oracle中split函数构建

由于oracle中不自带split分割函数,导致很多情况下需要做字符串分割时束手无策,下面介绍一个可用的方法。----首先定义一个type类型type_split_acreate or replace type type_split_a is table of varchar2 (4000);----定义函数,返回一个管道化的返回值function split(p_string varchar2,...

weixin_36338808的博客 826

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

oracle字符串分割函数split

(1)定义split_type类型:  CREATE OR REPLACE TYPE split_type IS TABLE OF VARCHAR2 (4000) (2)定义split函数:  CREATE OR REPLACE FUNCTION split

1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

oracle中的分隔函数,Oracle中的split字符串分割函数

首先需要定义 2 个类型1. Row 类型CREATE OR REPLACE TYPE ty_row_str_split as object (strValue VARCHAR2 (4000))2. Table 类型CREATE OR REPLACE TYPE ty_tbl_str_split IS TABLE OF ty_row_str_split创建函数:CREATE OR REPLACE ...

weixin_28787801的博客 3383

Oracle 字符串分割 Split

一、创建数组类型   Sql代码   CREATE OR REPLACE TYPE T_RET_TABLE IS TABLE OF VARCHAR2(512)    二、创建字符串分割函数   Sql代码   CREATE OR REPLACE FUNCTION F_SPLIT_STRING(AS_STR   VARCHAR2,

木头的专栏 846

oracle中分割字符串,split,regexp_substr

oracle中分割字符串,split,regexp_substr

ka7iu的博客 9545

oracle 字符串分割成数组_oracle 中 split 方法 分割字符串为多行记录

发现最近老是写vue的东西,仔细一想,我是个java程序员呀。这样划水不对呀。所以最近研究了一下在oracle中可能出现的一些情况的对策;其中,我发现有时候,我们在数据库中可能保存一些有规律的字符串,比如“123,321,4556,41324”类似这种,通过‘,’或者其他分隔符隔开的字符串值,但是我们业务需求是想要把这种字符串转换成[123,321,4556,41324]的数组格式,也就是查询出来...

weixin_35734408的博客 2877

oracle中的split 字符串分割函数

Oracle中的Split函数首先需要定义 2 个类型1. Row 类型CREATE OR REPLACE TYPE ty_row_str_split  as object (strValue VARCHAR2 (4000))2. Table 类型CREATE OR REPLACE TYPE ty_tbl_str_split IS TABLE OF ty_row_str_split 创建函数

雅冰石的专栏 3913

oracle分割字符串split_FanucKarel中实现字符串分割

“分享与快乐同在!”最近有小伙伴询问如何按指定分隔符分割字符串,在karel中并没有按字符分割的内置程序供我们使用,那么我们就来实现这个功能!在项目中,经常会在字符串中提取数据,比如机器人与相机使用TCP/IP通讯、字符串文本中数据提取等等。如何按字符将一个字符串数据拆分为多个字符串,最终将字符串转换为其他数据类型?实现代码:注:在代码中并未将字符串转为real数据类型,那只是调用一下...

weixin_39983427的博客 331

在oracle中写一个自定义的函数,实现split分割字符串的效果

问题: 在oracle中没有split这个函数,但是我们可能会经常分割字符串,这时,我们可以写一个自定义的函数,实现split分割字符串的效果。 解决方法: create or replace type varchartype as table of varchar2(200); -- 创建一个table类型,用于接受分割下来的字符串 -- 创建函数 create or r...

weixin_42342164的博客 1206

oracle分割字符串split_字符串的分隔

""" str.split(sep,maxsplit) 参数说明: str:表示要分割的字符串的名字 sep:用于指定分隔符,可以包含多个字符,默认为None(指的是空格,换行符n,制表符t,等) 指的是会默认将字符串中的空格,换行符进行分隔 maxsplit:可选参数,用于指定分割的次数,如果不指定或者为-1,则分割次数没有限制,否则返回结果列表的元素个数,个数最多为maxsplit+1 返回值...

weixin_39873356的博客 2264

oracle中字符串split,oracle中的split 字符串分割函数

Oracle中的Split函数首先需要定义 2 个类型1. Row 类型CREATE OR REPLACE TYPE ty_row_str_splitas object (strValue VARCHAR2 (4000))2. Table 类型CREATE OR REPLACE TYPE ty_tbl_str_split IS TABLE OF ty_row_str_split 创建函数: C...

weixin_39622217的博客 235

分割函数 oracle,oracle拆分逗号分隔字符串 实现split

最近老有人问题同样的sql 实现方法,itpub 上发一下,照顾百度用户。如果一个字符串中有像逗号或其它符号分隔,你想把它折分成列,如’first field, second field , third field’,拆成first fieldsecond fieldthird field第一种 用10G开始支持的正则表达式anbob@ANBOB>SELECT REGEXP_SUBSTR (...

weixin_39534002的博客 1320
上一篇: Java实现查询数据保存到Excel表中
「已注销」
博客等级 码龄10年 3粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值