# 1.8 在SELECT语句中使用条件逻辑

问题：

在select语句中，对数值进行if-else的判断。例如，要产生一个结果集，如果一个员工工资小于

等于2000美金，就返回消息“underpaid”；如果大于等于4000美金，就返回消息“overpaid”，如果是在这两者之间，就返回“ok”

解决方案：

```
select ename,sal,
	case when sal<=2000 then 'underpaid'
		 when sal>=4000 then 'overpaid'
		 else 'OK'
	end as status
from EMP;
```

结果：

![](https://3748388522-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRjpdT6PYM3zgtBC3PD%2F-MdaQFH8rMifAhp4mkSg%2F-MdaRnlxsSWodfq-VOrt%2Fimage.png?alt=media\&token=9d9c0d10-a21f-44c3-86d5-11b10359ff50)

###
