Oracle 自定义实用函数
一、ctod 字符转为date,
- create or replace function ctod(str in varchar2)
- return date
- as
- begin
- return to_date(str,'yyyy-MM-dd hh24:mi:ss');
- exception
- when others then
- return null;
- end;
- 使用示例:
select ctod('2019-1-17') from dual;
二、splittb 字符串分割,分割之后返回行。
- CREATE OR REPLACE FUNCTION splitTB(
- str in clob, --待分割的字符串
- splitchar in varchar2 --分割标志
- )
- return split_table
- IS
- restStr clob default splitTB.str;--剩余的字符串
- thisStr varchar2(4000);--取得的当前字符串
- indexStr int;--临时存放分隔符在字符串中的位置
- v split_table := split_table(); --返回结果
- v_i int:=0;
- v_spitchar_len int :=length(splitchar);
- begin
- dbms_output.put_line(restStr);
- while length(restStr) != 0
- LOOP
- <<top>>
- indexStr := instr(restStr,splitchar); --从子串中取分隔符的第一个位置
- if indexStr = 0 and length(restStr) != 0 then--在剩余的串中找不到分隔符
- begin
- v_i:=v_i+1;
- v.extend;
- v(v.count) := split_arr(v_i,trim(Reststr));
- return v;
- end;
- end if;
- if indexStr = 1 then---第一个字符便为分隔符,此时去掉分隔符
- begin
- restStr := substr(restStr,v_spitchar_len);
- goto top;
- end;
- end if;
- if length(restStr) = 0 or restStr is null then
- return v;
- end if;
- v_i:=v_i+1;
- v.extend;
- thisStr := trim(substr(restStr,1,indexStr - 1)); --取得当前的字符串
- restStr := substr(restStr,indexStr + v_spitchar_len);---取剩余的字符串
- v(v.count) := split_arr(v_i,thisStr);
- END LOOP;
- return v;
- end;
- 使用示例:
select * from table(splittb('a1,b2,cc',','));- 返回:(两列,第一列I序号,每二列cstr分割的值
I----------CSTR--------------------------------------------------------------------------------
1 a1
2 b2
3 cc
Oracle 自定义实用函数的更多相关文章
- oracle 自定义 聚合函数
Oracle自定义聚合函数实现字符串连接的聚合 create or replace type string_sum_obj as object ( --聚合函数的实质就是一个对象 sum ...
- ORACLE 自定义聚合函数
用户可以自定义聚合函数 ODCIAggregate,定义了四个聚集函数:初始化.迭代.合并和终止. Initialization is accomplished by the ODCIAggrega ...
- Oracle自定义聚集函数
今天工作中看见别人写的自定义聚集函数,所以一门心思的想搞懂,就在网上找资料了. 自定义聚集函数 自定义聚集函数接口简介 Oracle提供了很多预定义好的聚集函数,比如Max(), Sum(), AVG ...
- oracle 自定义聚合函数(MAX_O3_8HOUR_ND) 计算最大的臭氧8小时滑动平均值
create or replace function MAX_O3_8HOUR_ND(value NUMBER) return NUMBER parallel_enable aggregate usi ...
- 【Oracle】Oracle自定义的函数与过程
本篇主要内容如下: 6.1 引言 6.2 创建函数 6.3 存储过程 6.3.1创建过程 6.3.2调用存储过程 6.3.3 AUTHID 6.3.4 PRAGMA AUTONOMOUS_TRANSA ...
- Oracle自定义脱敏函数
对于信息安全有要求的,在数据下发和同步过程中需要对含有用户身份信息的敏感字段脱敏,包括用户姓名.证件号.地址等等,下面是自定义函数的代码 CREATE OR REPLACE FUNCTION F_GE ...
- 重写Oracle的wm_concat函数,自定义分隔符、排序
oracle中,wm_concat函数是一个聚合函数,和mysql中的group_concat函数类似,不过group_concat函数比较强大,可以定义分隔符和排序,当然所谓强大是相对的,这里假使我 ...
- Oracle自定义函数1
用户定义函数是存储在数据库中的代码块,可以把值返回到调用程序.调用时如同系统函数一样,如max(value)函数,其中,value被称为参数.函数参数有3种类型. IN 参数类型:表示输入给函数的参数 ...
- Oracle自定义函数
核心提示:函数用于返回特定数据.执行时得找一个变量接收函数的返回值; 语法如下: create or replace function function_name ( argu1 [mode1] da ...
随机推荐
- MSSQL中的表变量
最近在看<Microsoft SQL Server2005技术内幕:T-SQL程序设计> 1.表变量的事务上下文中提到,表变量不受外部事务回滚影响. 举个例子: DECLARE @TA ...
- 仿小米便签图文混排 EditText解决尾部插入文字bug
一直想实现像小米便签那样的图文混排效果,收集网上的办法无非三种: 1.自定义布局,每张图片是一个ImageView,插入图片后插入EditText,缺点是实现复杂,不能像小米便签那样同时选中图片和文字 ...
- Spring事务管理入门与进阶
事务管理 一个数据库事务是一个单一的工作单元操作序列.这些操作应该要么完整地执行,要么完全不执行.事务管理是一个重要组成部分,事务管理可以确保数据完整性和一致性.事务具有以下四个关键特性分别是 ACI ...
- ubuntu16下面安装vmware tools后仍然未全屏问题
1.默认下载ubuntu16的iso镜像后,自带的有vmtools.解压 tar -xzvf VMwareTools-10.0.6-3595377.tar.gz 进入解压目录. 执行:sudo ./ ...
- IIS支持http协议的:put、delete等方法
HTTP常见方法:DELETE, GET, HEAD, OPTIONS, POST, PUT, PATCH 以下是从网上搜索的方法:其实经过测试,只配置最后那个web.config就可以实现这个功能: ...
- [翻译] EAColourfulProgressView
EAColourfulProgressView 效果: EAColourfulProgressView is a custom progress view where the current fill ...
- Mysql常用语句与函数(待续)
-- 查询语句select class from stu_info where sid=1000000102;select * from stu_info t where t.age=88; -- t ...
- Retrieving failed records after an SqlBulkCopy exception
Let me start by saying that the idea I used in this article is not originally mine, but since I have ...
- Economy a Two-Edged Sword for Democrats
2017-05-03 12:05:07 https://www.usnews.com/news/blogs/ken-walshs-washington/2014/10/03/economy-a-two ...
- JavaScript中的值和引用
JavaScript5中有6种基本数据类型:undefined.null.布尔值(Boolean).字符串(String).数值(Number).对象(Object) ES6中新引入一种原始数据类型: ...