最近在做一个东西,查询字母在某个位置的数据..以下是我的做法.和大家分享下.如果有更好的方法,希望大家也能分享下.多交流多学习嘛..
--函数1
--作用 判断是否为数字
create or replace function isNumber(p_in varchar2) return varchar2 as
i number;
begin
--是否有E字母,因为程序会将字母 E 解析为数字 如果有,直接返回FALSE
if(instr(p_in,'E') = 0) then
i := to_number(p_in);
return 'TRUE';
else
return 'FALSE';
end if;
exception
when others then
return 'FALSE';
end;
--函数2
--作用 判断第几位为字符
create or replace function findCharToPostion(p_in varchar2, p_positon number)
return varchar2 as
c char(1);
i number;
begin
select substr(p_in,p_positon,1) into c from dual;
i := to_number(c);
return 'FALSE';
exception
when others then
return 'TRUE';
end findCharToPostion;
使用方法:
--找出[Column]第三位为字符的所有数据
select * from TABLE where findCharToPostion(Column,3) = 'TRUE';
--找出[Column]第四位为字符的所有数据
select * from TABLE where findCharToPostion(Column,4) = 'TRUE';
只是一个简单的例子,我想说的是,有时候函数也能帮我们解决很多头疼的问题...!!
希望能对大家有所启发..!!!!
分享到:
相关推荐
一、函数的创建、调用和权限1、创建函数create or replace function 函数名(参数1 模式 数据类型,) return 数据类型as --
Oracle创建函数是通过PL/SQL自定义编写的,通过关键字function按照自己的需求把复杂的业务逻辑封装进PL/SQL函数中,函数提供一个返回值,返回给使用者。这样使用者就不需要去理解业务逻辑,把PL/SQL函数中的业务逻辑...
ORACLE crc3函数,将字符类型转换成唯一的数字类型,例如CSDN,经过crc32函数转换后,得到的值为-1016176976
介绍了将多行转为字符串的三种方案,并比较了三种方案的执行效率. 1.sys_connect_by_path + start with ... connect by ... prior + 分析函数 2.自定义Function/SP 3.使用 Oracle 10g 内置函数 wmsys.wm_concat
Oracle 自定义split 函数 Oracle没有提供split函数,但可以自己建立一个函数实现此功能。比如“abc defg hijkl nmopqr stuvw xyz”,分隔符是空格,但空格个数不定。 源代码: CREATE OR REPLACE TYPE ty_str_...
Oracle查询取汉字拼音首字母Function
对于信息安全有要求的,在数据下发和同步过程中需要对含有用户身份信息的敏感字段脱敏,包括用户姓名、证件号、地址等等,下面是自定义函数的代码 CREATE OR REPLACE FUNCTION F_GET_SENSITIVE(IN_STR VARCHAR, IN...
oracle 自定义方法 判断日期是不是为假期 如果是假期则取下一天 直到工作日爲止
在Oracle中想要返回表对象,必须自定义一个表类型,如下所示: 代码如下: create or replace type t_table is table of number; 上面的类型定义好后,在function使用可用返回一列的表,如果需要多列的话,需要先...
8.2函数(function) 75 1.创建 75 2.调用函数 75 8.3程序包(package) 76 1.规范 76 2.主体 76 3.私有成员 77 4.实例化 77 5.重载 77 6.管理程序包和执行权限 77 8.4依赖性 78 练习 78 第九讲 索 引 80 一.了解索引...
1 CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2) 2 RETURN NUMBER 3 IS 4 v_str VARCHAR2 (1000); 5 BEGIN 6 IF str IS NULL 7 THEN 8 RETURN 0; 9 ELSE 10 v_str := translate(str, '....
第五章 Group Function(组函数)......130 第六章 Sub queries(子查询)............132 第七章 指定运行时变量..................133 第八章 数据模型和数据库设计......134 第九章 Creating Tables(创建表)......135...
第五章 Group Function(组函数)......130 第六章 Sub queries(子查询)............132 第七章 指定运行时变量..................133 第八章 数据模型和数据库设计......134 第九章 Creating Tables(创建表)......135...
有人在社区问到:C#调用Oracle中自定义函数的返回值时,无法正常调用。但在PL/SQL中正常调用返回。 于是动手一试: 1、准备函数(Oralce 11g.2.0.0.4) CREATE OR REPLACE FUNCTION F_Update_Grade(v_UserID in ...
11.5.8. 使用SimpleJdbcCall调用内置函数 11.5.9. 使用SimpleJdbcCall返回的ResultSet/REF Cursor 11.6. 用Java对象来表达JDBC操作 11.6.1. SqlQuery类 11.6.2. MappingSqlQuery类 11.6.3. SqlUpdate类 11.6.4...
11.5.8. 使用SimpleJdbcCall调用内置函数 11.5.9. 使用SimpleJdbcCall返回的ResultSet/REF Cursor 11.6. 用Java对象来表达JDBC操作 11.6.1. SqlQuery类 11.6.2. MappingSqlQuery类 11.6.3. SqlUpdate类 11.6.4...
Oracle建议我们自定义自己的角色,使我们更加灵活方便去管理用户 创建角色 SQL> create role admin; 授权给角色 SQL> grant connect,resource to admin; 撤销角色的权限 SQL> revoke connect from admin; ...
数据管理员的验证方式 2-12 使用密码文件验证 2-13 SQL*PLUS 2-14 Oracle 企业管理器 2-15 Oracle 企业管理器结构:基于 JAVA 的控制台和应用程序 2-16 Oracle 企业管理器结构:管理节点 2-17 Oracle 企业管理器...
38 Function.htm 部分函数、命令、属性中文说明 13K 39 Get_form.htm Win95/98下监控运行的其他程序 2K 40 Get_info.htm 使用Delphi获取系列信息 3K 41 Get_net_friend.htm 如何在程序中动态取得Win95/98的...
《精通SQ:结构化查询语言详解》全面讲解SQL语言,提供317个典型应用,读者可以随查随用,针对SQL Server和Oracle进行讲解,很有代表性。 全书共包括大小实例317个,突出了速学速查的特色。《精通SQ:结构化查询语言...