菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP How to W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

PostgreSQL CASE 表达式


CASE

The CASE expression goes through conditions and returns a value when the first condition is met (like an if-then-else statement)。CASE 表达式会遍历条件,并在第一个条件满足时返回值(类似于 if-then-else 语句)。

Once a condition is true, it will stop reading and return the result. If no conditions are true, it returns the value in the ELSE clause。一旦一个条件为真,它将停止读取并返回结果。如果没有条件为真,它将返回 ELSE 子句中的值。

如果没有 ELSE 部分且没有任何条件为真,则返回 NULL。

示例

Return specific values if the price meets a specific condition
当价格满足特定条件时返回特定值

SELECT product_name,
CASE
  WHEN price < 10 THEN 'Low price product'
  WHEN price > 50 THEN 'High price product'
ELSE
  'Normal product'
END
FROM products;
运行示例 »

With an Alias
带别名

When a column name is not specified for the "case" field, the parser uses case as the column name。如果未为“case”字段指定列名,则解析器将 case 用作列名。

To specify a column name, add an alias after the END keyword。要指定列名,请在 END 关键字后添加别名。

示例

Same example, but with an alias for the case column:
与上面相同的示例,但为 case 列添加了别名:

SELECT product_name,
CASE
  WHEN price < 10 THEN 'Low price product'
  WHEN price > 50 THEN 'High price product'
ELSE
  'Normal product'
END AS "price category"
FROM products;
运行示例 »

You can read more about aliases in our PostgreSQL AS chapter。您可以在我们的 PostgreSQL AS 章节 中了解更多关于别名的信息。


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持