MySql,case结构,while循坏,repeat循坏,loop+leave循坏,

#方式一
#给定一个月份,然后计算出所在的季度
CREATE PROCEDURE pro_test7(mom INT)
BEGIN
	DECLARE result varchar(10);
	CASE 
			WHEN mom>=1 AND mom<=3 THEN
				SET result='第一季度';
			WHEN mom>=4 AND mom<=6 THEN
				SET result='第二季度';
			WHEN mom>=7 AND mom<=9 THEN
				SET result='第三季度';
		ELSE
				SET result='第四季度';
	END CASE;
SELECT CONCAT('传递的月份为:',mom,'---计算出来的结果为:',result);
END;



#计算从1加到N的值
CREATE PROCEDURE pro_test8(n INT)
BEGIN
	DECLARE total INT DEFAULT 0;
	DECLARE num INT DEFAULT 1;
	WHILE num<=n DO
		SET total = total + num;
		SET num = num +1;
	END WHILE;
SELECT total;
END;

CALL pro_test8(100);

 

#满足条件退出循环
#计算从1加到n的值
CREATE PROCEDURE pro_test9(n INT)
BEGIN
	DECLARE total INT DEFAULT 0;
	REPEAT
		SET total=total+n;
		SET n = n -1;
		UNTIL n=0
	END REPEAT;
SELECT total;
END;

CALL pro_test9(3);
#计算从1加到n的值-----------------》loop + leave
CREATE PROCEDURE pro_test10(n INT)
BEGIN
	DECLARE total INT DEFAULT 0;
	c: LOOP
	SET total=total+n;
	SET n=n-1;
	IF n<0 THEN
		LEAVE c; 
	END IF; 
END LOOP c;
SELECT total;
END;

CALL pro_test10(3);

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值