使用SQL中SELECT语句的使用条件逻辑 |
||||||||||||||||||||||||||||||||||||||||||||||||
本文标签:SQL SELECT语句 如果使用CASE表达式直接在SELECT语句中执行条件逻辑,可以解决使用数据库中的一些问题,下面将为您示例分析,供您参考: 问题 在SELECT语句中对数值进行IF-ELSE操作 。例如,要产生一个结果集,如果一个员工的工资小于等于$2000,就返回消息UNDERPAID,如果大于等于$4000,就返回消息OVERPAID,如果在两者之间,就返回OK 。结果集应如下所示:
解决方案 使用CASE表达式直接在SELECT语句中执行条件逻辑 。 select ename,sal, case when sal <= 2000 then UNDERPAID when sal >= 4000 then OVERPAID else OK end as status from emp 讨论 CASE表达式可以针对返回值执行条件逻辑 。可以给CASE表达式取别名,以返回更易读的结果集 。在本解决方案中,给CASE表达式取的别名是STATUS 。ELSE子句是可选的,如果没有使用ELSE,对于不满足判断条件的行,CASE表达式会返回NULL 。
|