目标
使用sql写一个方法,实现传入身份证号,保留前四位和后四位,中间替换为*
实现
create or replace function fc(fid varchar2)
return varchar2 --定义返回值类型
is
Result varchar2(20); --定义变量
begin
select replace(fid,substr(fid,5,length(fid)-8),'*') into Result from dual;
return(Result); --返回值
end fc;
--调用方法
select fc('142629199909221016') from dual
学习笔记
- dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录,可以用它来做很多事情。
总的说就是在数据源不在特定表的情况下,组成查询语句进行查询。 - sql语句和java的变量生命不同,类型在后,id在前。
- ":="是赋值语句 如 FunctionResult := add1 + add2;
- substr(‘abcdef’,2,1) 第一个参数是字符串,第二个是开始的序号,第三个截取的个数
数据库对象之----函数 - oracle 函数function语法及简单实例
- oracle 自定义函数(非常简单明了) :以表结构接受返回数据;定义函数的三种方式(游标,table,管道)
- Oracle子程序之function、procedure
- 数据库Function的一点理解