上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.3.1 简单CASE表达式
简单CASE表达式的语法如下:
语句执行时首先计算expression的值,然后将该值和第1个WHEN子句中的数据(value1)进行比较,如果二者相等,则返回对应THEN子句中的结果(result1);如果二者不相等,则继续将该值和第2个WHEN子句中的数据(value2)进行比较,如果二者相等,则返回对应THEN子句中的结果(result2);依此类推。如果没有找到相等的数据,返回ELSE子句中的默认结果(default);如果没有指定ELSE子句,返回空值。
简单CASE表达式的计算过程如图3.1所示。
图3.1 简单CASE表达式的计算过程
例如,以下查询使用简单CASE表达式将员工的部门编号转换为相应的名称:
查询返回的结果如下:
简单CASE表达式在进行条件判断时使用的是等值比较(=),只能处理简单的比较逻辑。如果想要实现复杂的逻辑处理,例如根据学生考试成绩范围评出优秀、良好等,就需要使用更加强大的搜索CASE表达式。