什么时候在 PostgreSQL 中?
如果您是程序员,您可能对 IF-ELSE 语句非常熟悉。PostgreSQL 中的等价物是 CASE WHEN。
让我们通过一个例子来理解。如果您有包含学生百分比分数的表格标记,并且您想了解学生是否通过或未通过。下面给出了一个示例表。
名称 | perc_marks |
---|---|
Anil | 24 |
Joy | 65 |
Ron | 42 |
Reena | 87 |
假设及格分数是 40。现在,如果学生的分数超过 40 分,我们希望在该学生的姓名上打印“通过”,否则打印“失败”。这就是你可以做到的 -
SELECT name, CASE WHEN perc_marks >= 40 THEN 'PASS' ELSE 'FAIL' ENDstatus from marks
输出将是 -
名称 | 地位 |
---|---|
Anil | 失败 |
Joy | 经过 |
Ron | 经过 |
Reena | 经过 |
请记住,CASE WHEN 表达式末尾的 END 很重要。您可以添加多个 WHEN 语句。假设你想说那些得分超过 80 分的人的状态为“DISTINCTION”,在 40 到 80 分之间,他们的状态为“通过”,而低于 40 分,他们的状态为“失败”,您可以按如下方式进行操作:
SELECT name, CASEWHEN perc_marks >= 80 THEN 'DISTINCTION'
WHEN perc_marks >= 40 and perc_marks < 80 THEN 'PASS'
ELSE 'FAIL' END status from marks
输出将是 -
名称 | 地位 |
---|---|
Anil | 失败 |
Joy | 经过 |
Ron | 经过 |
Reena | 区别 |
以上是 什么时候在 PostgreSQL 中? 的全部内容, 来源链接: utcz.com/z/343877.html