1、任务实施内容
1.1 创建带参数的函数
1.2 调用函数
1.3 管理函数
2、任务实施步骤
1.1 创建带参数的函数
mysql> delimiter $$
mysql> create function d_kh(khbh char(5))
-> returns char(10)
-> begin
-> declare osum int;
-> declare khlevel char(4);
-> select sum(o_sum) intoosum from orders where c_id=khbh;
-> if osum<=1000 then setkhlevel='C级';
-> elseif osum>1000 andosum<=9000 then set khlevel='B级';
-> else set khlevel='A级';
-> end if;
-> return khlevel;
-> end
-> $$
1.2 调用函数
mysql> select d_kh('C0005') as 客户等级;
执行结果如下:
+----------+
|客户等级 |
+----------+
|C级 |
+----------+
1row in set
1.3 管理函数
1、查看函数定义信息
mysql> show create function d_kh \G;
2、修改函数
修改d_kh函数,该函数实现把会员等级分为A,B,C、D四级,把订单总金额小于等于5000的定为D级,大于5000且小于10000定为C级,大于10000且小于50000的定义为B级,大于等于50000的定为A级
mysql> delimiter $$
mysql>drop function if exists d_kh()
mysql> delimiter $$
mysql> create function d_kh(khbh char(5))
-> returns char(10)
-> begin
-> declare osum int;
-> declare khlevel char(4);
-> select sum(o_sum) intoosum from orders where c_id=khbh;
-> if osum<=5000 then setkhlevel='D级';
-> elseif osum>5000 andosum<10000 then set khlevel='C级';
-> elseif osum>=10000 and osum<=50000 then set khlevel='B级';
-> else set khlevel='A级';
-> end if;
-> return khlevel;
-> end
-> $$
Query OK, 0 rows affected
3、删除函数
Drop function d_kh;