我可以在SQL上执行条件或选择性SELECT语句吗?

时间:2014-06-30 04:43:34

标签: sql oracle select

有没有办法选择SELECT声明?

我的意思是,在一个查询中,对于名为vendor的表salarybonus以及vendor type。如果供应商类型是“水果供应商”,我想在单个查询中显示供应商薪水,只有当供应商是“轮胎供应商”时才想显示奖金?

有办法吗?谢谢。

1 个答案:

答案 0 :(得分:3)

这样简单:?

SELECT salary + CASE WHEN vendor_type = 'tire vendor' 
                     THEN bonus ELSE 0 
                     END vendor_salary
FROM vendors;

/

或者,如果您需要水果供应商的工资,如果轮胎供应商需要奖金,那么您可以查询:

SELECT
     CASE WHEN vendor_type = 'fruit vendor' 
          THEN salary 
          WHEN vendor_type= 'tire vendor' 
          THEN bonus 
     END vendor_salary
FROM vendors;

希望你只需要一个CASE条款。