在sql中case子句的两种形式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在sql中case子句的两种形式相关的知识,希望对你有一定的参考价值。

case子句,在select后面可以进行逻辑判断。

两种形式:判断相等、判断不等

一、判断相等的语法:

case 列名

when ...  then ...

when ...  then ...

else ...

end as 列别名

ONE:新建一个表,插入初始数据。

技术分享
--查整个表
select * from SDetail

--插入初始数据
insert into SDetail (SName,SScore,SGender) values(刘德华,99,0)
insert into SDetail (SName,SScore,SGender) values(古天乐,55,0)
insert into SDetail (SName,SScore,SGender) values(张惠妹,55,1)
insert into SDetail e(SName,SScore,SGender) values(梁家栋,43,0)
insert into SDetail (SName,SScore,SGender) values(王力宏,99,0)
insert into SDetail (SName,SScore,SGender) values(刘亦菲,88,1)
View Code

case 子句判断相等

技术分享
--case 语法的两种形式
select * ,
case SGender when 0 then  when 1 then  end as 性别
from SDetail
View Code

执行结果:

技术分享

二、判断不等(范围)

case when 包含列名的逻辑表达式 then ...

when ...  then ...

else ...

end as  列别名

技术分享
--case 判断不等(范围)
select * ,
case when SScore>60 then 及格 else 不及格 end as 是否及格
from SDetail
View Code

执行结果:

技术分享

 

以上是关于在sql中case子句的两种形式的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL case when 的两种用法

括号内的 SQL Server CASE 子句

sql server 2008 r2:当前会计年度 where 子句中的 case 语句

SQL 在 WHERE IN 子句中使用 CASE 语句

SQL 过滤在 where 子句中使用 case

Oracle的sql语句的两种判断形式