在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

MySQL流程控制函数怎么使用

123次阅读
没有评论

共计 2430 个字符,预计需要花费 7 分钟才能阅读完成。

本文丸趣 TV 小编为大家详细介绍“MySQL 流程控制函数怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“MySQL 流程控制函数怎么使用”文章能帮助大家解决疑惑,下面跟着丸趣 TV 小编的思路慢慢深入,一起来学习新知识吧。

在 MySQL 中,流程控制函数是指可以控制存储过程(stored procedure)或函数(function)中执行流程的语句。以下是几个常用的流程控制函数:

1.IF 函数

实现 IF hellip; hellip;ELSE hellip; hellip; 的效果。

#  如果 expr1 为 true,则返回 expr2,否则返回 expr3
IF(expr1,expr2,expr3)

可以看出,IF 函数与三元运算符很像,如:

//  比较最大数
 int a=10;
 int b=5;
 //  比较
 int bigNum=a b?a:b;

即,将 IF 函数的三个参数中,expr1 是条件表达式,最终结果是 true 或 false,如果条件成立(true)则返回 expr2,如果条件不成立(false)则返回 expr3。例:

SELECT IF(10 5,10,5) AS bigNum;

MySQL 流程控制函数怎么使用

2.IFNULL 函数

同样是实现 IF hellip; hellip;ELSE hellip; hellip; 的效果,相当于 IF 函数的变种。

#  如果 expr1 不为 NULL,则返回 expr1,否则返回 expr2
IFNULL(expr1,expr2)

即将原本的条件表达式变形为判断 expr1 是否为 null,不为 null 就是其本身(expr1),为空则是 expr2.

SELECT IFNULL(null, 不空) AS notNull

MySQL 流程控制函数怎么使用

相当于 IF 函数的

SELECT IF(null IS NULL,null, 不空) AS notNull

判断 expr1 是否为空,为空(true)显示 expr2,不为空(false)显示 expr3

3.CASE 函数

case 函数有两种不同的效果

switch case

相当于 java 中的 switch case 的效果。即 switch 中的变量表达式的值与 case 后面的常量比较。

int week=3;
 switch (week){
 case 1:
 System.out.println( 星期一 
 break;
 case 2:
 System.out.println( 星期二 
 break;
 case 3:
 System.out.println( 星期三 
 break;
 case 4:
 System.out.println( 星期四 
 break;
 case 5:
 System.out.println( 星期五 
 break;
 case 6:
 System.out.println( 星期六 
 break;
 case 7:
 System.out.println( 星期日 
 break;
 default:
 System.out.println( 非法数据 
 break;
 }

用 sql 表示:

# NOW() 函数用于获取当前日期和时间,# WEEKDAY(date) 函数, 表示返回 date 对应的工作日索引,#  因为索引从 0 开始,所以加 1;也可以不加 1,将 when 的常量改为工作日索引也可
SELECT CASE WEEKDAY(NOW())+1
 WHEN 1 THEN  星期一 
 WHEN 2 THEN  星期二 
 WHEN 3 THEN  星期三 
 WHEN 4 THEN  星期四 
 WHEN 5 THEN  星期五 
 WHEN 6 THEN  星期六 
 WHEN 7 THEN  星期日 
 ELSE  非法数据 
END AS `week`;

MySQL 流程控制函数怎么使用

函数结构

case   要判断的变量(字段)或表达式
when   常量 1  then   要显示的值 1(或语句 1);
when   常量 2  then   要显示的值 2(或语句 2);
…….
else   要显示的值 n 或语句 n;
end

注意:

与 java 不同,直接写 case 而不是 switch,且没有大括号

when 后面直接加常量值,不用写冒号,用的是 then

then 后面如果是显示的值,不需要加分号;如果 then 后面加的是语句,就需要加分号。

when hellip; hellip;then hellip; hellip; 语句可以有多个。

默认情况用的是 else。

结尾用 end

4. 多重 IF

类似于 java 中的多重 if 判断。

int grade=87;
 if (grade =90){
 System.out.println( 优秀 
 }else if (grade =80){
 System.out.println( 良好 
 }else if (grade =70){
 System.out.println( 一般 
 }else if (grade =60){
 System.out.println( 及格 
 }else {
 System.out.println( 不及格 
 }

用 sql 表示:

SELECT id,`name`,chinese,
 CASE
 WHEN chinese =90 THEN  优秀 
 WHEN chinese =80 THEN  良好 
 WHEN chinese =70 THEN  一般 
 WHEN chinese =60 THEN  及格 
 ELSE  不及格 
 END AS `rank`
FROM student

MySQL 流程控制函数怎么使用

函数结构:

case
when   条件 1  then   要显示的值 1 或语句 1;
when   条件 2  then   要显示的值 2 或语句 2;
……
else   要显示的值 n 或语句 n
end

注意:

case 后面没有加条件

when 后面是条件,结果是 true 或 false;满足条件执行 then,显示后面的值或语句

同样的 then 后面如果是显示的值,不需要加分号;如果 then 后面加的是语句,就需要加分号。

读到这里,这篇“MySQL 流程控制函数怎么使用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注丸趣 TV 行业资讯频道。

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2024-02-03发表,共计2430字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 午夜91| 国产欧美视频综合二区 | 全免费a级毛片免费看 | 亚洲成人免费在线观看 | 国产精品资源在线播放 | 亚洲精品综合一区二区三区在线 | 亚洲免费视频一区 | 国产精品美女久久久久av超清 | 久青草国产手机在线观 | 国产午夜无码片在线观看 | 99视频精品全部在线播放 | 四虎精品影院4hutv四虎 | 亚洲小说综合 | 国产成人综合亚洲亚洲欧美 | www.黑丝| 美女屁股又黄又禁视频 | 女视频www女中国 | 无遮挡呻吟娇喘视频免费播放 | 精品精品久久宅男的天堂 | 888米奇四色极速在线观看 | 在线观看成人免费视频播放 | 无码视频一区二区三区在线观看 | 国产精品视频福利一区二区 | 午夜激爽毛片在线看 | 久热re在线视频精品免费 | 午夜在线播放免费高清观看 | 一本一道色欲综合网中文字幕 | 一区二区不卡久久精品 | 在线视频不卡国产在线视频不卡 | 国产人成激情视频在线观看 | 色天天色综合 | 国产农村妇女精品一二区 | av天堂永久资源网 | 亚洲一区二区三区久久 | 国产成人久久一区二区三区 | 国产精品一级毛片不收费 | 91香蕉视频在线播放 | 黄色a级大片 | 久久午夜神器 | 亚洲国产日韩在线视频 | 香蕉在线精品视频在线观看2 |