mysql语法及函数_mysql case函数跟自定义函数的基本语法及使用方式

/*case 使用方式一*/

SELECT

id,

CASE WHEN `name` = '鸭脖子' THEN '鸡屁股' ELSE `name` END `name`,

inv_Number

FROM

s_unit_user_inventory;

0818b9ca8b590ca3270a3433284dd417.png

/*case 使用方式二*/

SELECT

id ,

CASE `name` WHEN '鸭脖子' THEN '鸭屁股' ELSE `name` END `name`,

inv_Number

FROM s_unit_user_inventory;

0818b9ca8b590ca3270a3433284dd417.png

mysql创建自定义函数

/*创建自定义函数,求指定数之间的和*/

delimiter $$ /*修改临时语句结束符*/

CREATE FUNCTION sun(num int) RETURNS INT

BEGIN

/*定义条件变量,注意用@符号定义的变量是全局的,也就是说在外面也可以访问*/

SET @flg = 1;/*循环结束变量开关*/

SET @res = 0;/*用来保存最终结果*/

WHILE @flg <= num DO/*当条件满足时进入循环*/

SET @res = @res + @flg; /*注意:mysql里没有+= -=这种概练*/

SET @flg := @flg + 1;/*只能用这种方式赋值*/

/* 【备注】 := 符号的说明 在mysql中 := 才是真正意义上的赋值操作,把右边的值赋给左边的变量

= 则只在一种情况下作为赋值用,

就是在SET语句里面,如: SET id = 50 除此之外 = 则是作为比较操作符使用的

当然我这里完全可以用 = 来进行赋值,但人家Mysq已经专门设计了一个专门的赋值符号 :=

所以我只要是赋值操作都是使用 := 来完成,这样可避免出错

*/

END WHILE;/*结束循环*/

RETURN @res;/*返回结果*/

END

/*语句结束*/

$$

/*将临时语句结束符改回成 ; */

delimiter ;

/*函数查看语句*/

SELECT sun(100);

/*函数删除语句*/

DROP FUNCTION sun;

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值