逗号分隔的字符串转换为行数据(collection)

逗号分隔的字符串转换为行数据(collection)

CREATE OR REPLACE FUNCTION "GET_STR_TAB" (v_str in varchar2) return table_str pipelined as
  v_new_str varchar2(8000);
begin
  if v_str is null then
    pipe row(-1);
  else
    v_new_str:=replace(replace(v_str,chr(10),‘‘),chr(9),‘‘);
    while 1=1 loop
      if instr(v_new_str,‘,‘)=0 then
        pipe row(to_number(v_new_str));
        exit;
      else
        pipe row(to_number(substr(v_new_str,1,instr(v_new_str,‘,‘)-1)));
        v_new_str:=substr(v_new_str,instr(v_new_str,‘,‘)+1);
      end if;
    end loop;
  end if;
  return;
end;

另还要有一个type类型
CREATE OR REPLACE TYPE "TABLE_STR"       as table of number
时间: 2024-10-16 19:28:36

逗号分隔的字符串转换为行数据(collection)的相关文章

Json 字符串 转换为 DataTable数据集合

/// <summary> /// 将json转换为DataTable /// </summary> /// <param name="strJson">得到的json</param> /// <returns></returns> private DataTable JsonToDataTable(string strJson) { //转换json格式 strJson = strJson.Replace(&qu

【Java面试题】17 如何把一个逗号分隔的字符串转换为数组? 关于String类中split方法的使用,超级详细!!!

split 方法:将一个字符串分割为子字符串,然后将结果作为字符串数组返回. stringObj.split([separator],[limit])参数:stringObj   必选项.要被分解的 String 对象或文字.该对象不会被 split 方法修改.separator 可选项.字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符.如果忽 略该选项,返回包含整个字符串的单一元素数组. limit可选项.该值用来限制返回数组中的元素个数. 说明:split 方法的结果

逗号分隔的字符串与List互转

将逗号分隔的字符串转换为List // 将逗号分隔的字符串转换为List String str = "a,b,c"; // 1.使用JDK,逗号分隔的字符串-->数组-->list List<String> result = Arrays.asList(str.split(",")); // 2.使用Apache Commons的StringUtils List<String> result1 = Arrays.asList(St

List与逗号分隔的字符串相互转换

如果程序员想实现某种功能,有两条路可以走.一条就是自己实现,一条就是调用别人的实现,别人的实现就是所谓的API.而且大多数情况下,好多"别人"都实现了这个功能.程序员有不得不在这其中选择.大部分情况下,程序员就会知道哪个用哪个,先看到哪个用哪个.到最后,在实际项目中,同样的功能会调用五花八门的API.我在公司的项目中就看到了这种情况.其实,也无可厚非,我相信好多项目都是这个样子.我们不可能要求程序员都用同一种方法.程序员可能会有不同的好恶.为了让程序员能快乐自由地编程,就随他去吧!因为

mybatis --- 如何相互转换逗号分隔的字符串和List

如果程序员想实现某种功能,有两条路可以走.一条就是自己实现,一条就是调用别人的实现,别人的实现就是所谓的API.而且大多数情况下,好多"别人"都 实现了这个功能.程序员有不得不在这其中选择.大部分情况下,程序员就会知道哪个用哪个,先看到哪个用哪个.到最后,在实际项目中,同样的功能会调用五花 八门的API.我在公司的项目中就看到了这种情况.其实,也无可厚非,我相信好多项目都是这个样子.我们不可能要求程序员都用同一种方法.程序员可能会有 不同的好恶.为了让程序员能快乐自由地编程,就随他去吧

sql里将重复行数据合并为一行,数据用逗号分隔

DECLARE @T1 table ( UserID int , UserName nvarchar(50), CityName nvarchar(50) ); insert into @T1 (UserID,UserName,CityName) values (1,'a','上海') insert into @T1 (UserID,UserName,CityName) values (2,'b','北京') insert into @T1 (UserID,UserName,CityName)

[原创]SQL表值函数:把用逗号分隔的字符串转换成表格数据

  我们日常开发过程中,非常常见的一种需求,把某一个用逗号或者/或者其他符号作为间隔的字符串分隔成一张表数据. 在前面我们介绍了 [原创]SQL 把表中字段存储的逗号隔开内容转换成列表形式,当然按照这种方式转变一下也是可以实现的,但是我这里有以前我一直使用的另外一种方式,也记录一下吧. 依照惯例,我们首先来看看效果. 调用:SELECT Id FROM [Fn_StringSplitToTable]('1,12,36,65,58,56,DF',',') 具体函数如下: -- ==========

菜单数据(树形)结构的使用-- ---数据的列存储转换为行存储

一.菜单数据表中的存储结构 二.转换后的数据结构 三. 转换过程 1.确定菜单数据的最大级别 /// <summary> /// 获得Nature定义的最大目录级别,以便于确定Nature的DataTable表结构中的列数目 /// </summary> /// <returns></returns> public int GetMaxNatureLevel() { if (dtNature == null && dtNature.Rows.

给定的逗号分隔的数字字符串转换为Table

--将给定的逗号分隔的数字字符串转换为Table CREATE FUNCTION [dbo].[fu_Split](@strString nvarchar(4000)) RETURNS @Result TABLE(Value int) AS BEGIN DECLARE @x xml SELECT @x = CAST('<A>' + REPLACE(@strString,',','</A><A>') + '</A>' AS xml) INSERT INTO @