创建不带有参数的函数,如格式化时间和日期函数:
CREATE FUNCTION func() RETURNS VARCHAR(30)
RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点:%i分:%s秒');//创建完成
//调用func()函数
SELECT func();
创建带有参数的函数,比如求和函数:
CREATE FUNCTION qiuhe(num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED)
RETURNS FLOAT(10,2) UNSIGNED//函数名不能与关键字冲突,不然会报错,错误代码为1064
RETURN (num1+num2)/2;//函数创建完成
//调用qiuhe函数
SELECT qiuhe(10,15);//返回值为12.5
//创建具有复合结构的函数,复合函数的结构体要用BEGIN...END包含。
//比如向表中插入记录并返回插入的记录的ID值:
CREATE FUNCTION adduser(username VARCHAR(30))
RETURNS INT UNSIGNED
BEGIN
INSERT test(username) VALUES(username);
RETURN LAST_INSERT_ID();
END
// //表示结束 DELIMITER //
调用adduser()函数
SELECT adduser('Tom');