`

oracle function 函数

阅读更多

oracle function的几个实例,只限入门,高手路过

 

-- ********the simplest example of function
-- tip: can use sql to directly call the function with in module parameter
create or replace function get_customer_name return varchar2 is
  v_user varchar2(100);
begin
  select customer.KHQC into v_user from t_khxx customer ;
  return v_user;
end;

declare
  v1 varchar2(100);
begin
  v1 := get_customer_name;
  --set serveroutput on
  dbms_output.put_line(v1);
end;

select get_customer_name from dual;------directly call it
--******************the end




-- ********the example of funtion with parameter that can't follow length
-- tip: can use sql to directly call the function with in module parameter

create or replace function get_finance_name(financetype in varchar2)
  return nvarchar2 as
  v_name t_mast.dmnr%type;-- tip:using %type define val instead of 'nvarchar2(40)';
begin
  select mast.dmnr
    into v_name
    from t_mast mast
   where mast.dmlb = '0114'
     and upper(mast.dmbh) = upper(financetype);
  return v_name;
end;

declare
  v1 varchar2(30) := 'rd';
  v2 varchar2(30) := '';
begin
  v2 := get_finance_name(v1);
  select get_finance_name(v1) into v2 from dual; 
  dbms_output.put_line(v2);
end;

select get_finance_name('rd') from dual; -- directly call function in sql

-- *****************the end






-- ********the example of function with parameters with out module that can't follow by length
-- tip: can't use sql to directly call the function with out module parameter

create or replace function get_department(deptname       in varchar2,
                                          deptid         out varchar2,
                                          parentdeptname out varchar2)
  return varchar2 as
  v_id     varchar2(100);
begin
  select dept.bmjc, dept.id
    into parentdeptname,v_id
    from t_bm dept -- when need two or more returns, using parameter with out module
   where dept.bmmc = deptname;
   deptid := v_id;
   return v_id;
end;

declare
  v1 varchar2(100);
  v2 varchar2(100);
  v3 varchar2(100);
  v4 varchar2(100);
begin
  v1 := '有限公司';
  v4 := get_department(v1, v2, v3);
  
end;
-- **************the end
 
分享到:
评论

相关推荐

    oracle_function用法

    Oracle 函数用法 Oracle 函数是Oracle数据库中的一种编程对象,它允许用户定义自己的函数,以便在SQL语句中调用。 Oracle 函数的用法可以分为以下几个方面: 函数调用限制 在 Oracle 中,函数可以在 SQL 语句中被...

    ORACLE CRC32函数

    ### ORACLE CRC32函数详解 #### 一、概述 在Oracle数据库中,`CRC32`函数是一种非常实用的功能,主要用于将字符类型的数据转换为一个唯一的数字类型,这一过程通常被称为散列(Hash)。通过该函数,可以方便地生成...

    Oracle 递归函数介绍

    Oracle 递归函数介绍 Oracle 递归函数是一种特殊的PL/SQL函数,可以用于解决复杂的树形结构查询问题。递归函数可以自我调用,以便遍历树形结构的每个节点,直到达到停止条件。 在 Oracle 中,递归函数的定义语法...

    ORACLE分析函数教程

    ### Oracle分析函数详解 #### 一、Oracle分析函数概述 Oracle分析函数是在处理大量数据时极为有用的一套工具,主要用于在线分析处理(OLAP)场景。这类函数可以在多个级别上进行数据聚合,并支持复杂的排序、分组...

    oracle function 返回结果集

    ### Oracle Function 返回结果集 #### 知识点概述 在Oracle数据库中,有时我们需要创建一个函数来返回一个结果集(即一系列记录),而非单一值。本文档中的代码示例展示了如何定义一个返回自定义表类型的函数`Ns_...

    oracle管道函数用法

    ### Oracle管道函数详解 #### 一、概述 Oracle管道函数是一种特殊类型的函数,它能够返回一个数据集合,并且能够在函数执行的过程中逐步返回结果,而不仅仅是最后的结果。这种特性使得管道函数非常适合于处理大量...

    Oracle分析函数

    Oracle 分析函数详解 Oracle 分析函数是 Oracle 数据库中的一种强大功能,能够帮助用户快速进行数据分析和处理。在本文中,我们将对 Oracle 分析函数进行详细的介绍,并对其各个函数进行解释。 一、总体介绍 ...

    Oracle自定义脱敏函数的代码详解

    Oracle自定义脱敏函数是数据库管理中用于保护敏感数据的一种常见方法,尤其是在处理用户个人信息时。本文将深入解析Oracle自定义脱敏函数的实现细节,以确保在数据共享、备份或分析时不泄露关键信息。 首先,我们来...

    Oracle中实现Split函数功能

    这个函数使用了 Oracle 的管道化函数(pipelined function)来返回拆分后的结果。函数内部使用了一个循环来拆分字符串,每次循环都会将拆分后的结果返回给调用者。 最后,我们可以使用这个函数来拆分字符串。例如,...

    oracle自定义函数总结

    ### Oracle 自定义函数详解 #### 一、概述 在Oracle数据库中,自定义函数是一种非常实用的功能,可以让我们根据特定需求编写SQL代码块,并将这些代码块封装为可重用的函数。通过这种方式,不仅可以提高代码的复用...

    oracle split函数

    ### Oracle Split 函数详解 #### 一、Oracle Split 函数简介 在Oracle数据库中,并没有内置的split函数来处理字符串的分割操作。然而,在实际应用中,经常需要将一个包含多个值的字符串按照指定的分隔符进行拆分,...

    Oracle中的分析函数详解

    其中,Oracle的分析函数是其强大的特性之一,它允许用户在单个SQL查询中执行复杂的分析操作,而无需使用子查询或者自连接。这篇文档将深入探讨Oracle中的分析函数,帮助你更好地理解和利用这一功能。 一、什么是...

    14.Oracle自定义函数1

    在 Oracle 数据库中,自定义函数是一种非常重要的特性,允许用户根据需求创建自己的功能模块,以扩展数据库的内置功能。本文将详细讲解如何创建、调用和管理自定义函数,以及讨论它们在实际应用中的优缺点。 一、...

    hibernate 调用oracle函数

    1. **创建Oracle函数**:在Oracle数据库中,我们首先需要创建一个自定义函数。例如,我们可以创建一个计算两个数字之和的函数`ADD_NUMBERS`: ```sql CREATE OR REPLACE FUNCTION ADD_NUMBERS(p_num1 NUMBER, p_...

    Oracle分析函数.doc

    例如,`function_name(arg1,arg2,...) over (partition by column1, column2 order by column3)`会根据`column1`和`column2`分组,然后在每个组内按`column3`排序来应用函数。 Oracle分析函数在数据分析、报表生成...

    oracle 分析函数学习笔记

    Oracle 分析函数是一种高级SQL功能,它允许在单个查询中对数据集进行复杂的分析,无需额外的编程或多次数据库交互。分析函数处理的结果通常基于数据的分组、排序或特定窗口,为统计汇总和复杂的数据分析提供了便利。...

    oracle分析函数及开窗函数

    ### Oracle分析函数及开窗函数详解 #### 一、Oracle分析函数概述 Oracle自8.1.6版本开始引入了分析函数,这类函数主要用于计算基于组的聚合值,并且与传统的聚合函数不同的是,分析函数可以针对每个组返回多行结果...

    110个oracle常用函数.pdf

    Oracle创建函数是通过PL/SQL自定义编写的,通过关键字function按照自己的需求把复杂的业务逻辑封装进PL/SQL函数中,函数提供一个返回值,返回给使用者。这样使用者就不需要去理解业务逻辑,把PL/SQL函数中的业务逻辑...

    oracle 管道函数+动态游标

    管道函数(Pipe-lined Function)是Oracle中一种特殊类型的函数,它可以逐行地返回结果集,类似于查询语句。这使得它在处理大量数据时更为高效,并且可以作为表数据类型的数据源。 #### 创建自定义类型 首先,创建...

Global site tag (gtag.js) - Google Analytics