导读 在数据库操作中,批量更新是一项常见的需求。尤其是当需要根据多种条件来调整多个字段时,CASE WHEN语句显得尤为强大!💪今天就来聊聊如何...
在数据库操作中,批量更新是一项常见的需求。尤其是当需要根据多种条件来调整多个字段时,CASE WHEN语句显得尤为强大!💪今天就来聊聊如何利用MySQL的CASE WHEN完成这种复杂更新吧!
假设我们有一个商品表`products`,现在需要根据不同的库存状态和销售情况调整价格与折扣。我们可以这样写SQL:
```sql
UPDATE products
SET price = CASE
WHEN stock < 50 AND sales > 100 THEN price 0.9
WHEN stock >= 50 AND sales <= 50 THEN price 1.1
ELSE price
END,
discount = CASE
WHEN stock < 50 AND sales > 100 THEN 20
WHEN stock >= 50 AND sales <= 50 THEN 10
ELSE discount
END
WHERE condition;
```
这种方式不仅逻辑清晰,还能一次性处理多个字段更新,大大提高了效率。🚀记得在执行前检查WHERE条件哦,避免误更新!💡