語法:
CREATE [AGGREGATE] FUNCTION function_name
(parameter_name type,[parameter_name type,...])
RETURNS {STRING|INTEGER|REAL}
runtime_body
簡單來說就是:
CREATE FUNCTION 函數(shù)名稱(參數(shù)列表)
RETURNS 返回值類型
函數(shù)體
例子:
DELIMITER //
CREATE FUNCTION IF EXIST deleteById(uid SMALLINT UNSIGNED)
RETURNS VARCHAR(20)
BEGIN
DELETE FROM son WHERE id = uid;
RETURN (SELECT COUNT(id) FROM son);
END//
DELIMITER // 意思是修改默認的結束符";"為"http://",以后的SQL語句都要以"http://"作為結尾
UDF中,REURN語句也包含在BEGIN...END中
刪除
DROP FUNCTION function_name
調用
SELECT function_name(parameter_value,...);
補充:
自定義函數(shù)中定義局部變量語法:
DECLARE var_name[,varname]...date_type [DEFAULT VALUE];
簡單來說就是:
DECLARE 變量1[,變量2,... ]變量類型 [DEFAULT 默認值]
DELIMITER //
CREATE FUNCTION addTwoNumber(x SMALLINT UNSIGNED, Y SMALLINT UNSIGNED)
RETURNS SMALLINT
BEGIN
DECLARE a, b SMALLINT UNSIGNED DEFAULT 10;
SET a = x, b = y;
RETURN a+b;
END//
其他詳見: https://blog.csdn.net/rzq228/article/details/73498172
歡迎關注,以后會不定時更新冤吨!
PS: 若你覺得可以、還行梁沧、過得去、甚至不太差的話料皇,可以“關注”一下砸脊,就此謝過!