PostgreSQL CASE 表达式
CASE
The CASE
表达式遍历条件,并在第一个条件满足时返回一个值(类似于 if-then-else 语句)。
一旦某个条件为真,它将停止读取并返回结果。如果没有任何条件为真,则返回 ELSE
子句中的值。
如果没有 ELSE
部分且没有任何条件为真,则返回 NULL。
示例
如果价格满足特定条件,则返回特定值
SELECT product_name,
CASE
WHEN price < 10 THEN '低价产品'
WHEN price > 50 THEN '高价产品'
ELSE
'普通产品'
END
FROM products;
运行示例 »
使用别名
当没有为“case”字段指定列名时,解析器将使用 case
作为列名。
要指定列名,请在 END
关键字后添加别名。
示例
相同的示例,但为 case 列添加了别名:
SELECT product_name,
CASE
WHEN price < 10 THEN '低价产品'
WHEN price > 50 THEN '高价产品'
ELSE
'普通产品'
END AS "价格类别"
FROM products;
运行示例 »
您可以在我们的 PostgreSQL AS 章节 中阅读更多关于别名的信息。