Oracle 儲存過程,獲得幾個變數中的極值

2021-10-01 15:49:56 字數 1071 閱讀 5323

首先定義乙個全域性的資料型別,為一列資料的表型別.

通過在儲存過程中使用該資料型別,並進行初始化.

在sql查詢中,通過table關鍵字,進而查詢出變數之間的極值

示例**

create

orreplace

type mytable as

table

of varchar2(

100)

;declare

my_list mytable;

v_max varchar2(50)

;begin

-- 字串

my_list := mytable(

'a',

'c',

'd')

;select

max(column_value)

into v_max from

table

(my_list)

; dbms_output.put_line(v_max)

;-- 數字

my_list := mytable(

1024

,4096

,512);

select

max(to_number(column_value)

)into v_max from

table

(my_list)

; dbms_output.put_line(v_max)

;-- 日期

my_list := mytable(

'2010-01-01'

,'2015-01-01'

,'2020-01-01');

select

max(to_date(column_value,

'yyyy-mm-dd'))

into v_max from

table

(my_list)

; dbms_output.put_line(v_max)

;end

;

Oracle儲存過程呼叫儲存過程

oracle儲存過程呼叫有返回結果集的儲存過程一般用光標的方式,宣告乙個游標,把結果集放到游標裡面,然後迴圈游標 declare newcs sys refcursor cs1 number cs2 number cstype table rowtype table列的個數和newcs返回的個數一樣...

ORACLE儲存過程

自定義函式開始 create or replace function fn wftemplateidget templatecategoryid number,organid number,templatemode number return number istemplateid number i...

Oracle 儲存過程

create or replace procedure p 有就替換,沒有就建立 iscursor c is select from emp for update begin for v emp in c loop if v emp.deptno 10 then update emp2 set sa...