admin管理员组文章数量:1530961
2023年12月13日发(作者:)
case when用法sql oracle
CASE WHEN在SQL和Oracle中都是同样的语法,用于实现条件控制语句。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default result
END
```
其中,CASE是关键字,condition与result应根据具体需要修改,ELSE和default result都是可选的。
一般情况下,CASE WHEN语句在SELECT语句中使用。例如: ```
SELECT CASE
WHEN age < 18 THEN '未成年'
ELSE '成年'
END
FROM student;
```
这个语句会将student表中age小于18的行的结果设为“未成年”,其他的则设为“成年”。
除了上述的基本语法外,CASE WHEN还有一些其他的用法:
1.可以用于与其他函数一起使用,例如:
```
SELECT AVG(CASE
WHEN gender = 'Male' THEN salary * 0.8 ELSE salary
END)
FROM employee;
```
这样的语句将会按照员工性别来计算平均工资,男性员工的工资将会以80%计算。
2.可以嵌套使用,例如:
```
SELECT CASE
WHEN age < 18 THEN '未成年'
ELSE
CASE
WHEN age BETWEEN 18 AND 30 THEN '成年人'
ELSE '老年人' END
END
FROM student;
```
这个语句会根据学生的年龄来判断其类别,未成年的学生设为“未成年”,18至30岁之间的学生设为“成年人”,其他的设为“老年人”。
总之,CASE WHEN是一种非常常用的条件控制语句,能够帮助我们更好地处理数据,提升SQL的灵活性。
版权声明:本文标题:case when用法sql oracle 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1702420324a6133.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论