SQL语句–case函数
eg 1:
select t1.Fname,case when isnull(t1.Grade,'')='' then t2.Re_grade else t1.Grade end FinalGrade
from Grade t1
inner join Grade_revamp t2 on t1.Sno=t2.Sno
---Grade成绩表 Grade_revamp重修表 t1.Grade成绩 t2.Re_grade重修成绩 Sno学生号
---case when isnull(t1.Grade,'')='' then t2.Re_grade else t1.Grade end FinalGrade
---这个语句的意思是:
---判断 当成绩表中的成绩为空时,就取重修表中的重修成绩,并把该列叫做FinalGrade 最终成绩
-------当成绩表中成绩不为空时,就显示该成绩,并把该列叫做FinalGrade 最终成绩
eg 2:
select Sno,Sname,Ssex=case sex when 'MAN' then '男' when 'WOMAN' then '女' end
from Student
---Ssex=case sex when 'MAN' then '男' when 'WOMAN' then '女' end
---这个语句的意思是:
---判断 当sex 为‘MAN’时,在Ssex列 写 ‘男’
------ 当sex 为‘WOMAN’时,在Ssex列 写 ‘女’
本文介绍了SQL中的Case函数用法,通过两个示例展示了如何根据条件返回不同结果。第一个示例说明了当成绩表中的成绩为空时,如何从重修表中获取成绩;第二个示例演示了如何将性别字段转换为中文表示。
1062

被折叠的 条评论
为什么被折叠?



