mysql case when 想else不变
时间: 2024-05-21 15:09:53 浏览: 68
MySQL中的CASE语句是一种逻辑函数,它允许您根据条件在查询中返回不同的值。当您需要根据不同条件返回不同的值时,您可以使用CASE语句,其中CASE后面的条件满足时,将返回THEN之后的值,否则将返回ELSE之后的值。如果没有满足条件的值,则将返回NULL。如果您想要在不满足任何条件时返回原始值,则可以在ELSE子句中指定相同的列名。下面是一个示例:
```
SELECT column1,
column2,
CASE
WHEN column1 = 'value1' THEN 'new_value1'
WHEN column1 = 'value2' THEN 'new_value2'
ELSE column1
END AS new_column1
FROM table_name;
```
在上面的例子中,如果column1的值等于'value1',则返回'new_value1';如果column1的值等于'value2',则返回'new_value2';否则将返回column1本身作为新列new_column1的值。
相关问题
mysql case when else_MySQL 函数 - case when then else end
MySQL中的CASE函数可以在查询语句中根据条件值来返回不同的结果。它的语法格式如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
```
其中,`condition`是一个条件表达式,如果满足该条件表达式则返回对应的`result`,否则继续判断下一个`condition`,如果所有`condition`都不满足,则返回`default_result`。
例如,假设我们有一个学生成绩表,包含学生姓名和成绩,我们可以使用`CASE`函数来将成绩转换为对应的等级:
```
SELECT
name,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
WHEN score >= 60 THEN 'D'
ELSE 'F'
END AS grade
FROM
student_scores;
```
在上面的例子中,如果成绩大于等于90,则返回A,否则继续判断下一个条件,以此类推。最后,如果所有条件都不满足,则返回F。
mysql case when then else
MySQL 中的 CASE WHEN THEN ELSE 语句允许在查询中根据不同的条件返回不同的值。语法结构如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
例如,可以使用 CASE WHEN THEN ELSE 语句将某个字段的值转换为另一个值,如下所示:
SELECT id, name,
CASE
WHEN age < 18 THEN 'Minor'
WHEN age >= 18 THEN 'Adult'
ELSE 'Unknown'
END AS age_group
FROM users;
上面的查询会返回 id、name 和 age_group 字段,其中 age_group 字段根据 age 字段的值返回 'Minor'(年龄小于 18 岁)、'Adult'(年龄大于等于 18 岁)或 'Unknown'(未知)。
阅读全文