CASE 表达式允许语句返回几个可能的结果之一,这依赖于若干条件测试中哪个求值为
TRUE。
下列示例展示如何在 UPDATE 语句中使用 CASE 表达式来增加 stock 表中某些商品的单
价:
UPDATE stock
GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司 - 176 -
SET unit_price = CASE
WHEN stock_num = 1
AND manu_code = "HRO"
THEN unit_price * 1.2
WHEN stock_num = 1
AND manu_code = "SMT"
THEN unit_price * 1.1
ELSE 0
END
您必须在 CASE 表达式内包括至少一个 WHEN 子句;后续的 WHEN 子句和 ELSE 子
句是可选的。如果无 WHEN 条件求值为真,则结果值为空。