case+when.+Pgsql
时间: 2024-02-02 10:03:55 浏览: 27
在Pgsql中,CASE WHEN语句用于进行条件判断和赋值。以下是一个示例代码:
```sql
SELECT column1, column2,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE result
END AS new_column
FROM table_name;
```
在上述代码中,column1和column2是要选取的原始字段,condition1、condition2等是条件表达式,result1、result2等是对应条件满足时的赋值结果,new_column是赋值后的结果字段名,table_name是要查询的表名。
相关问题
pgsql case when
在 PostgreSQL 中,CASE WHEN 是一种条件表达式,用于根据不同的条件返回不同的结果。它的语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是条件表达式,result1、result2等是对应条件为真时返回的结果。ELSE 子句是可选的,用于指定当所有条件都不满足时的默认返回结果。
CASE WHEN 可以嵌套使用,形成复杂的条件判断逻辑。例如:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN
CASE
WHEN sub_condition1 THEN sub_result1
WHEN sub_condition2 THEN sub_result2
...
ELSE sub_result
END
...
ELSE result
END
```
这样可以根据不同的条件组合返回不同的结果。
相关问题:
1. PostgreSQL 中的 CASE WHEN 语句的语法是什么?
2. CASE WHEN 可以嵌套使用吗?
3. CASE WHEN 的作用是什么?
PGSQL where case when
在PGSQL中,WHERE CASE WHEN语句是一种条件表达,它允许根据不同的条件来选择不同的操作或返回不同的结果。它的语法如下:
```
SELECT column1, column2, ...
FROM table_name
WHERE CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END;
```
在这个语法中,condition1、condition2等是条件表达式,result1、result2等是对应条件为真时返回的结果。
下面是一个示例,假设我们有一个名为students的表,其中包含id、name和age字段。我们想要选择年龄大于18岁的学生,并根据他们的年龄分别返回不同的结果:
```
SELECT id, name,
CASE
WHEN age > 18 THEN '成年'
ELSE '未成年'
END AS age_group
FROM students;
```
这个查询将返回一个结果集,其中包含学生的id、name和age_group字段。age_group字段根据学生的年龄是否大于18岁来进行分类。