23、条件判断函数

2022/7/5 23:23:06

本文主要是介绍23、条件判断函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

IF单条件判断

以 student 表为例,使用 IF() 函数对查询结果的字段判断:

SELECT name,IF(age > 17,'成年','未成年') AS age_group,id_number FROM student;

IF(age > 17,'成年','未成年') 表示若 age 字段满足 age > 17 则展示为 成年,否则展示为 未成年。

IFNULL判断是否为空

先向 teacher 表插入测试数据:

INSERT INTO teacher (name,age,id_number,email) VALUES
('Jack',30,'420117202006041111',NULL),
('Mary',31,'420117202006042222','mary@qq.com'),
('Timo',35,'420117202006043333',NULL),
('Faker',38,'420117202006044444','faker@qq.com'),
('Bob',35,'420117202006045555',NULL);

使用 IFNULL() 函数对查询结果的字段判断:

SELECT name,age,id_number,IFNULL(email,'default@qq.com') AS full_email FROM teacher;

IFNULL(email,'default@qq.com') 表示若 email 字段为 NULL ,则展示为 default @qq.com。

CASE多条件判断

以 teacher 表为例,将指定英文名对应的中文名展示出来:

SELECT 
*,
CASE name
WHEN 'Tom'  THEN '汤姆'
WHEN 'Jack' THEN '杰克'
WHEN 'Mary' THEN '玛丽'
WHEN 'Timo' THEN '提莫'
WHEN 'Bob'  THEN '鲍勃'
WHEN 'Judy' THEN '朱蒂'
ELSE '未定义' END AS 'chinese_name'
FROM teacher;

对 name 字段进行条件判断,并将判断后的列重命名为 chinese_name,若指定的 name 字段的值满足 WHEN 则展示相应的 THEN 后面的值。

参考资料:
http://www.imooc.com/wiki/mysqllesson/mysqlifelse.html



这篇关于23、条件判断函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程