oracle中case when如何用子查询

1876
2023/12/27 22:44:43
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Oracle中,您可以使用子查询来在CASE WHEN语句中进行逻辑判断。下面是一个例子:

SELECT employee_id, last_name, salary,
  CASE
    WHEN salary > (SELECT AVG(salary) FROM employees) THEN '高薪'
    WHEN salary < (SELECT AVG(salary) FROM employees) THEN '低薪'
    ELSE '平均薪'
  END AS salary_status
FROM employees;

在上面的例子中,我们使用了子查询来获取所有员工薪水的平均值,并在CASE WHEN语句中进行了比较。如果员工的薪水高于平均薪水,则返回’高薪’,如果低于平均薪水,则返回’低薪’,否则返回’平均薪’。

请注意,在使用子查询时要确保子查询返回的结果是一个标量值(单个值),以便与比较操作符进行比较。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: oracle怎么增加表空间文件