case when用法
时间: 2023-06-25 20:03:37 浏览: 53
复习oracle
在SQL中,CASE WHEN语句用于根据一个或多个条件执行不同的操作。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE else_result
END
```
其中,`condition1`、`condition2`等是要检查的条件;`result1`、`result2`等是与每个条件相关的结果;`else_result`是所有条件都不满足时的默认结果。
例如,以下代码将根据订单数量计算折扣:
```
SELECT order_id, order_qty,
CASE
WHEN order_qty < 50 THEN order_qty * 0.1
WHEN order_qty < 100 THEN order_qty * 0.2
ELSE order_qty * 0.3
END AS discount
FROM orders;
```
这个查询将返回一个包含订单ID、订单数量和折扣的结果集。如果订单数量小于50,则折扣为订单数量的10%;如果订单数量大于等于50且小于100,则折扣为订单数量的20%;否则,折扣为订单数量的30%。
阅读全文