MySQL-- if()函数 简单明了

avatar
作者
猴君
阅读量:1

 if 主要有:IF函数嵌套和IF+聚合函数 两类,主要是用来根据条件返回不同值。

基本语法为;

IF(条件表达式,值1,值2) 
  • 如果条件表达式为True,返回值1,为False,返回值2.
  • 返回值可以是任何值,比如:数值,文本,日期,空值,NULL,数学表达式,函数等。

1、IF函数

实例1:在学生表中,将1995年以后出生的学生划分为2班,将1995年(包括1995)之前的学生划分为1班,最后显示Sname,Sage,所在班级这三列。

select  Sname as '学生姓名', Sage as '学生年龄', IF(YEAR(Sage)<=1995,'1班','2班') as '所在班级' from students ORDER BY Sage;  

在这里插入图片描述

2、IF函数嵌套

  • 当分类大于两种或者以上时,就可以使用IF函数嵌套。

实例2:在学生表中,将学生编号小于等于3的学生,分为1班,学生编号在4-6的学生,分为2班,学生编号大于等于7的学生,分为3班,最后显示Sid,Sname,所在班级这三列。

select  Sid as '学生编号', Sname as '学生姓名', IF( 	Sid <= 3,'1班', 	IF(Sid >= 7,'3班','2班') 	) as '所在班级' from students order by Sid 

在这里插入图片描述

3、IF + 聚合函数

  • IF 还经常与聚合函数一起结合使用

实例3:将学生表和教师结合使用,计算班主任所带的学生数量,大于等于5人以上的显示:5人以上,人数小于5人的显示:5人以下。

select  t.Tname as '老师姓名', count(*) as '人数', IF( 	count(*) >= 5,'5人以上','5人以下' ) as '分类' from teachers as t join students as s using(Tid) GROUP BY t.Tname 

在这里插入图片描述

 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!