CASE 表达式

    CASE WHEN <求值表达式> THEN <表达式>
    WHEN < 求值表达式> THEN <表达式>
    WHEN <求值表达式> THEN <表达式>

    ELSE <表达式>
    END

    • 最后的 ELSE NULL 是 上述情况之外时返回 NULL 的意思
    • CASE表达式中的 ELSE 子句可以省略,但还是希望大家不要省略
    • CASE 表达式中的 END 不能省略

      1. SELECT product_name, <br /> CASE WHEN product_type = '衣服'<br /> THEN 'A:' || product_type<br /> WHEN product_type = '办公用品'<br /> THEN 'B:' || product_type<br /> WHEN product_type = '厨房用具'<br /> THEN 'C' || product_type<br /> ELSE NULL<br />END AS abc_product_type<br />FROM Product;

    SELECT SUM( CASE WHEN sale_price <= 1000
    THEN 1 ELSE 0 END ) AS low_price,
    SUM( CASE WHEN sale_price BETWEEN 1001 AND 3000
    THEN 1 ELSE 0 END ) AS mid_price,
    SUM( CASE WHEN sale_price >= 3001
    THEN 1 ELSE 0 END ) AS high_price
    FROM Product;