`
1988xuxuxu
  • 浏览: 20230 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

SUMC 函数

 
阅读更多
--创建一个类型TypeSumVarchar

create or replace type TypeSumVarchar as object
(
  sum VARCHAR2(100),
  static function ODCIAggregateInitialize(sctx IN OUT TypeSumVarchar)
    return number,
  member function ODCIAggregateIterate(self IN OUT TypeSumVarchar,
    value IN varchar2) return number,
  member function ODCIAggregateTerminate(self IN TypeSumVarchar,
    returnValue OUT VARCHAR2, flags IN number) return number,
  member function ODCIAggregateMerge(self IN OUT TypeSumVarchar,
    ctx2 IN TypeSumVarchar) return number
);
/

--创建类型的实体
CREATE OR REPLACE TYPE BODY TYPESUMVARCHAR is
static function ODCIAggregateInitialize(sctx IN OUT TypeSumVarchar)
return number is
begin
  sctx := TypeSumVarchar('');
  return ODCIConst.Success;
end;

member function ODCIAggregateIterate(self IN OUT TypeSumVarchar, value IN VARCHAR2)
return number is
begin
  self.sum:=self.sum||','||value;  --此处是函数的实现部分
  return ODCIConst.Success;
end;

member function ODCIAggregateTerminate(self IN TypeSumVarchar, returnValue OUT
VARCHAR2, flags IN number) return number is
begin
  returnValue := substr(self.sum,2);  --返回值去掉最左部的连接字符','
  return ODCIConst.Success;
end;

member function ODCIAggregateMerge(self IN OUT TypeSumVarchar, ctx2 IN
TypeSumVarchar) return number is
begin
  return ODCIConst.Success;
end;
end;
/

--创建自定义聚集函数SUMC

CREATE OR REPLACE FUNCTION SUMC (input VARCHAR2) RETURN VARCHAR2
PARALLEL_ENABLE AGGREGATE USING TypeSumVarchar;
/
分享到:
评论

相关推荐

    leetcode2sumc-Leetcode:力码

    递归函数:找到一个中值并用它的左子树和右子树调用函数本身 中等的 [Java] 方法1)以右-左-父顺序读取树方法2)莫里斯遍历 简单的 埃拉托色尼筛(素数表) 运行时间:O(n log log n) 中等的 使用两个 for 循环(或 ...

    leetcode2sumc-leetcode:leetcode

    函数返回版本 int start=0,end=size; // [start,end) while (start < end) { int mid = start + (end - start) / 2; if (array[mid] > k) end = mid; else if (array[mid] < k) start = mid + 1; else return ...

    leetcode2sumc-LeetCode:力码

    首先,我想到了一个想法,我可以使用排序函数并找到值的索引等于目标的一半,然后我可以轻松获取索引。但是我犯了一个错误,我需要的是排序前的索引。所以我不得不更新一个向量来花费更多的时间。 最简单的解决方案...

    leetcode2sumc-leetcode:leetcode问题

    leetcode 2 sum c leetcode source code of leetcode problems ...2.负数的取余动作存在堆内存溢出的可能,使用取绝对值方式避免 3.使用-fsanitize=address编译参数检测堆内存是否有溢出 ...2.传入函数的&

    leetcode2sumc-NaughtyBear_notes:NaughtyBear笔记+搬运+总结

    leetcode 2 sum c NaughtyBearNotes NaughtyBear 笔记 搬运+总结 :open_book: Github ...技术方向校招求职者、初学者的基础知识总结,包括语言、程序库、数据结构、...修饰成员函数,说明该成员函数内不能修改成员变量。

    leetcode2sumc-Interview::books:C/C++面试基础知识总结

    leetcode 2 sum c :blue_book: Summary    |    :light_bulb: ...方向校招求职者、初学者的基础知识总结,包括语言...修饰成员函数,说明该成员函数内不能修改成员变量。 使用 const 使用 // 类 class A { private: co

    leetcode2sumc-CSharp-100DaysOfCode:CSharp-100DaysOfCode

    编写一个函数来确定 t 是否是 s 的字谜 话题 种类 技能 一步步 代码 public class Solution { public bool IsAnagram(string s, string t) { if (s.Length != t.Length) return false; char[] source = s....

    leetcode2sumc-Coding:Java语言|《剑指offer》与leetcode|AC万万岁!

    leetcode 2 sum c 此仓库有四个部分: 《剑指offer》java代码实现,一本关于面试算法题经典的书。 《玩转算法面试》,慕课课程,对leetcode的题目分门别类进行讲解,讲的很好,力荐。 排序算法,快排,归并排序,堆...

    leetcode2sumc-leetcode:Python和C中的算法解决方案

    指针/字符串函数 , 2 指针 , 哈希表/滑动窗口 , 哈希表/滑动窗口 链表 问题 解决方案 标签 , , 快/慢指针 , 2 指针 , 反向子列表 堆栈/队列 问题 解决方案 标签 , 堆 二分查找 问题 解决方案 标签 , , , 哈希表/排序...

    leetcode2sumc-Daily-Algorithm-Practice:每天练习新算法和新概念,以拓宽编程知识库

    leetcode 2 和 c 日常算法练习 我的方法是从各种现有的存储库和其他在线资源中收集算法,并提出我自己的解决方案。...2.我了解到,在制作箭头函数时,指定的参数(a,b,c)对应于(当前元素,元素索引和当前包含数组)

    leetcode2sumc-Two-Sum-2-sorted-array:二和二排序数组

    函数 twoSum 应该返回两个数字的索引,使它们相加为目标,其中 index1 必须小于 index2。 请注意,您返回的答案(index1 和 index2)不是从零开始的。 您可以假设每个输入都只有一个解决方案。 输入:number={2, 7, ...

    leetcode2sumc-codify:我在网上找到的一系列用Node.js编写的编码问题的解决方案

    的字符串,通过存储该运行的长度来压缩同一字符的重复“运行”,并提供一个函数来反转压缩。 输出可以是任何东西,只要你能用它重新创建输入。 如何运行: node runlength.js c [range-of-alphabets] //f

    leetcode2sumc-Cpp-STL-Quick-Help:它包含C++STL用法和快速帮助以及易于理解的注释和示例

    编写比较器函数 1 . Using in-built comparator provided by C++ : priority_queue< int , vector< int >, greater< int >> pq; // creates min-heap 2 . Using user defined comparator as a structure ...

    C#制作的计算器(功能强大)

    C#制作的计算器(功能强大) 支持键盘输入 支持2 8 10 16四种进制 支持多种函数运算

Global site tag (gtag.js) - Google Analytics