mysql 中 case when then .... else end 的简单使用
16lz
2021-01-22
数据SQL CASE 表达式是一种通用的条件表达式,类似于其它语言中的 if/else 语句。
CASE WHEN condition THEN result
WHEN condition THEN result
.............
[WHEN ...]
[ELSE result]
END
CASE 子句可以用于任何表达式可以有效存在的地方。 condition 是一个返回boolean 的表达式。 如果结果为真,那么 CASE 表达式的结果就是符合条件的 result。 如果结果为假,那么以相同方式搜寻任何随后的 WHEN 子句。 如果没有 WHEN condition 为真,那么 case 表达式的结果就是在 ELSE 子句里的值。 如果省略了 ELSE 子句而且没有匹配的条件, 结果为 NULL。
或其语法为:
简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
建议都使用第一种,少记点,也好理解。
例子:如下某学校在2005和2006年比赛的数据,
1)将 win_loss 中的胜,负,平 都变成 对应的 ‘win’,'loss','tie'
select date_year, case when win_loss='胜' then 'win' when win_loss='负' then 'loss' else 'tie' end win_loss from scores;
更多相关文章
- SQL:使用IN子句搜索列值
- 如何在drupal视图中添加DISTINCT,GROUP BY子句
- 从MySQL转储中删除DEFINER子句。
- 从Access表将数据导入Excel,从子句中出现语法错误
- 将非常简单的Expression >转换为SQL where子句
- MySQL基础入门学习【7】查询表达式解析 SELECT
- Web开发实战学习(涉及EL表达式,JSTL,数据库)
- HSQLDB / Oracle - IN子句中的1000多个项目
- Java常量表达式相关的编译优化代码