多语言展示
当前在线:176今日阅读:176今日分享:34

怎么使用MySQL的流程控制函数IF和case when

MySQL的流程控制函数的使用范围也是很广泛的,用户可以使用这类函数在一个SQL语句中实现条件选择,这样做的目的是提高语句的执行效率。下面笔者就以具体的示例来详细分享流程函数的用法。
工具/原料

mysql workbench

方法/步骤
1

首先我们要来创建一个工资表来做今天的分享,笔者是在test数据库里面来创建的,具体创建语句如下图所示。

2

接着我们来给这个工资表,插入一些具体的数据,以方便我们的测试,具体插入语句如下图所示。

3

接下来,我们就可以用我们已经准备好的表来介绍流程函数了,首先我们来讲IF(value,t,f)函数。假设我们的需求是工资高于3000的就属于“高薪”,用“rich”来表示,其他的属于底薪,用“poor”来表示,具体操作如下图。

4

然后我们来讲IFNULL(value1,value2)函数,它是用来替换NULL值的,因为我们都清楚NULL这个值是不能参与数值运算的,所以我们下面来举例用0来替换NULL值。

5

现在轮到我们的 CASE WHEN函数,同样我们利用第三步中的需求,这次我们用这个函数来实现,具体操作如下图。

6

当然了,对于第四步中的分类,我们还可以做更多的细分,比如说我们可以多增加几个分类,具体如下图所示。

注意事项
1

不同版本的MySQL里面的语法会有细微的变化,笔者这里的版本是5.7。

2

学习函数只要套用它的格式,然后理解相应的参数是什么意思,就会很容易上手了。

推荐信息