CASE表达式
1、简单Case表达式:
基本语法:
CASE <表达式>
WHEN <表达式> THEN <表达式>
WHEN <表达式> THEN <表达式>
WHEN <表达式> THEN <表达式>
. . .
ELSE <表达式>
END
例句:
select sid,
case sid
when '01' then '雷'
when '02' then '电'
when '03' then '风'
when '04' then '云'
else '其它'
end as 编号
from student
Case后面跟的是需要比较的项,每个when后面都有对应的值是判断sid等于多少时,显示多少,比如当sid等于’01’时,显示’雷’,else是不等于when的sid值,显示的值,最后end as对该列命名
2、搜索Case表达式:
基本语法:
CASE WHEN <求值表达式> THEN <表达式>
WHEN <求值表达式> THEN <表达式>
WHEN <求值表达式> THEN <表达式>
. . .
ELSE <表达式>
END
例句:
select sid,
case when sid='01' then '雷'
when sid='02' then '电'
when sid='03' then '风'
when sid='04' then '云'
else '其它'
end as 编号
from student
同样的结果,写法不同,这种写法会对每条记录进行判断,先从第一个when开始,如果使第一个when后面的表达式为真,就返回then后面的值,不为真就判断下一个when,直到else为止,然后对下一条记录做同样的运算。
尽管很渺小,但终究会变得伟大