--.自定義函式
--語法:
createorreplace
function fun_函式名(引數1 資料型別,引數2,[
in|out|in out
]資料型別……)
return
+返回的資料型別is|
asbegin
--邏輯體
--裡面必須要有乙個return子句
end;
--對比儲存過程
createorreplace
procedure sp_儲存過程名(引數) is/as
begin
--邏輯體
end;
--注意:
--1.自定義函式的命名:以f_或者fun_開頭。
--2.自定義函式的引數和儲存過程的引數一樣,在建立時都不能寫大小,只能寫資料型別。
--3.自定義函式也有傳入引數,傳出引數,傳入傳出引數。
---【例】建立自定義函式,實現兩個值的加和
createorreplace
function fun_sum(p_a number,p_b number
)return
number
asv_sum
number; --
宣告乙個變數,用來賦值。
begin
v_sum :
= p_a+
p_b;
return
v_sum;
end;
--呼叫自定義函式
--自定義函式需要在查詢中呼叫
select fun_sum(3,5) from dual;
----【例】編寫自定義函式,實現計算員工的年收入,通過輸入員工編號,進行計算
createorreplace
function fun_income(p_empno number
) return
number
asv_income
number
;begin
select (sal+nvl(comm,0))*
12into
v_income
from
empwhere empno =
p_empno;
return
v_income;
end;
--呼叫自定義函式
select ename, fun_income(7788) from emp where empno=7788;
SQL自定義函式
建立使用者自定義函式 標量函式 create function dbo.bmrs bmh as int returns int asbegin declare bmrs int select bmrs count 工號 from 銷售人員where 部門號 bmh return bmrs endgo...
sql 自定義函式
delimiter create definer function woshow try aid bigint returns bigint 20 language sql not deterministic sql security comment string begin if aid 0 th...
SQL自定義函式
自定義函式與儲存過程的區別 存在的意義 1.能夠在select等sql語句中直接使用自定義函式,儲存過程不行。2.自定義函式可以呼叫其他函式,也可以呼叫自己 遞迴 3.可以在表列和check 約束中使用自定義函式來實現特殊列或約束 4.自定義函式不能有任何 函式 是指對具有函式外作用域 例如資料庫表...