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为止,然后对下一条记录做同样的运算。

01-07 06:51