SQL中case when和if的一个使用场景
- 本次案例介绍
- SQL实际代码操作
一:案例解读
- 描述:一个学生表student,里面有Sno、Sname、Sage、Ssex字段,分别表示学生的ID号、学生姓名、学生年龄、学生性别,现在由于某些原因,性别字段录成相反的结果,即男录成了女、女录成了男,因此需要对数据进行变更;
- 分析:最直接的方法就是通过update更新表,其次如果我们不想更新数据库,仅仅是在查询中进行更改,那么这时候case when 和if派上了用场
二:SQL代码实现
方法一:通过update方法实现
select Sno, Sname, Sage,
(if(Ssex = '男', '女', '男')) as Ssex
from student;
select Sno, Sname, Sage,
(case sage
when '男' then '女'
when '女' then '男'
end) as Ssex
from student;
方法二:通过update直接更新数据源
update student
set Ssex = (
case Ssex
when '男' then '女'
when '女' then '男'
end);
以上就是case when以及if在更新数据时候的一个使用场景,关于SQL的更多操作敬请期待!