CASE 语句的灵活分支逻辑,用来在 SQL 里做条件判断挺方便。你可以直接在查询里写CASE WHEN
,像写 if else 一样,还能根据成绩输出不同的等级。嗯,比在应用层循环判断要高效不少。
用它的好处是代码可读性高,比如想按分数区间显示“优秀”“良好”“及格”,一条SELECT
就搞定,响应也快。
示例挺直观:
SELECT stuNo,
成绩 = CASE
WHEN writtenExam >= 90 THEN '优秀'
WHEN writtenExam >= 80 THEN '良好'
WHEN writtenExam >= 60 THEN '及格'
ELSE '不及格'
END
FROM Students
你还可以参考其他数据库的用法,比如MySQL、Oracle、SQL Server都有类似语法,细节上会有点小区别,写之前最好先看下文档。
如果你经常写统计报表,CASE 语句真的省事,可以试着用在项目里替代多层判断逻辑。